diff --git a/en/about_nablarch/concept.rst b/en/about_nablarch/concept.rst index 965e3908a..dddd778ba 100644 --- a/en/about_nablarch/concept.rst +++ b/en/about_nablarch/concept.rst @@ -28,4 +28,4 @@ However, for responding to a rapidly changing business environment, it is necess For achieving this, it is important to reuse proven parts. Nablarch is able to meet these needs by providing content that can be reused in a "ready-to-use" state, such as frameworks, adapters for adapting to frequently used middleware [1]_ and environments where inexperienced people can start developing immediately. -.. [1] Apache Log4j, WebSphere MQ, etc. +.. [1] Redis, SLF4J, etc. diff --git a/en/about_nablarch/versionup_policy.rst b/en/about_nablarch/versionup_policy.rst index 7aa9cf53a..07f6b5b9f 100644 --- a/en/about_nablarch/versionup_policy.rst +++ b/en/about_nablarch/versionup_policy.rst @@ -26,26 +26,26 @@ A version consists of a combination of multiple modules. :widths: 40 20 20 20 * - Module Example - - Nablarch5 - - Nablarch5u1 - - Nablarch5u2 + - Nablarch6 + - Nablarch6u1 + - Nablarch6u2 * - nablarch-fw - - 1.0.0 - - 1.0.1 - - 1.0.2 + - 2.0.0 + - 2.0.1 + - 2.0.2 * - nablarch-common-dao - - 1.0.0 - - 1.1.0 - - 1.1.0 + - 2.0.0 + - 2.1.0 + - 2.1.0 * - nablarch-fw-jaxrs - - - - - - 1.0.0 + - 2.0.0 -In the above table, 5/5u1/5u2 are the release versions of Nablarch. +In the above table, 6/6u1/6u2 are the release versions of Nablarch. .. _`versionup_policy-versionup_type`: @@ -68,10 +68,8 @@ There are three types of Nablarch version upgrades. |br| e.g., Renewal of the execution control platform - Application framework |br| - Extension component |br| Development tools |br| - Development standard |br| - Implementation Examples + Development standard - 1 year ~ * - Revision up @@ -99,16 +97,16 @@ The version numbering system is as follows. (product version number)u(update number) - e.g., 5(initial release of product version 5), 5u1(Update release 1 of product version 5) + e.g., 6(initial release of product version 6), 6u1(Update release 1 of product version 6) Product Version Number Incremented at minor upgrade. |br| - e.g., Nablarch 5u6 → Nablarch 6 |br| + e.g., Nablarch 6u6 → Nablarch 7 |br| The starting number is 5. Update Number Incremented at revision up or bug fix. |br| - e.g., Nablarch 5u6 → Nablarch 5u7 |br| + e.g., Nablarch 6u6 → Nablarch 6u7 |br| The starting number is 0. However, if the number is 0, no update number will be given. .. _`versionup_policy-backward_compatibility_policy`: @@ -185,4 +183,3 @@ If any of the following applies, we may upgrade the version so that backward com * When a problem occurs due to a version upgrade of JDK, which is the environment in which the framework operates, and it cannot be fixed while maintaining backward compatibility. If we make changes that don't maintain backward compatibility, we'll explain what they're doing and how to deal with them in the "Impact on the system and how to deal with it(システムへの影響の可能性の内容と対処)" section of the `Release Notes(Japanese Page) `_. - diff --git a/en/application_framework/adaptors/doma_adaptor.rst b/en/application_framework/adaptors/doma_adaptor.rst index ed927b6e8..5e83d4f16 100644 --- a/en/application_framework/adaptors/doma_adaptor.rst +++ b/en/application_framework/adaptors/doma_adaptor.rst @@ -108,14 +108,14 @@ An implementation example is shown below. DomaDaoRepository.get(ProjectDao.class).insert(project); -Using in a JSR352-compliant batch application +Using in a Jakarta Batch-compliant batch application ---------------------------------------------------------------- -The following listeners are provided in this adapter to use Doma in JSR352-compliant batch applications. +The following listeners are provided in this adapter to use Doma in Jakarta Batch-compliant batch applications. * :java:extdoc:`DomaTransactionStepListener` * :java:extdoc:`DomaTransactionItemWriteListener` -By defining these listeners in the listener list, it is possible to access the database using Doma even in JSR352-compliant batch applications. +By defining these listeners in the listener list, it is possible to access the database using Doma even in Jakarta Batch-compliant batch applications. The configuration example shown below. @@ -147,9 +147,9 @@ The configuration example shown below. int[] batchInsert(List bonuses); -Deferred loading in jsr352-compliant batch applications ---------------------------------------------------------- -When loading a large amount of data with JSR352-compliant batch applications, you may want to use deferred loading. +Deferred loading in Jakarta Batch-compliant batch applications +--------------------------------------------------------------- +When loading a large amount of data with Jakarta Batch-compliant batch applications, you may want to use deferred loading. In that case, specify :java:extdoc:`DomaTransactionNotSupportedConfig` in the config attribute of Dao annotation. @@ -210,43 +210,6 @@ ItemReader class } } -Use in ETL --------------------------------------------------- -When using ETL, using Doma in steps added to the project may be required. -In such a case, a listener list in which a job name and step name are specified is defined. - -The configuration example shown below. - -Job definition file - .. code-block:: xml - - - - - - - - - - - - - - -Component configuration file - .. code-block:: xml - - - - - - - - - - Accessing multiple databases -------------------------------------------------- @@ -315,7 +278,7 @@ Usage procedure * Define :java:extdoc:`ConnectionFactoryFromDomaConnection ` in the component configuration file. The component name should be ``connectionFactoryFromDoma``. - * Configure ConnectionFactoryFromDomaConnection in the listener that controls the transaction of JSR352 Doma. + * Configure ConnectionFactoryFromDomaConnection in the listener that controls the transaction of Doma for Jakarta Batch. .. code-block:: xml @@ -328,7 +291,7 @@ Usage procedure diff --git a/en/application_framework/adaptors/jaxrs_adaptor.rst b/en/application_framework/adaptors/jaxrs_adaptor.rst index fd24ce5b1..bd6b467f7 100644 --- a/en/application_framework/adaptors/jaxrs_adaptor.rst +++ b/en/application_framework/adaptors/jaxrs_adaptor.rst @@ -1,12 +1,20 @@ .. _jaxrs_adaptor: -JAX-RS Adapter -============================ +Jakarta RESTful Web Services Adapter +=========================================== .. contents:: Table of contents :depth: 3 :local: +.. tip:: + This function was called "JAX-RS Adapter" until Nablarch5. + However, as Java EE was transferred to the Eclipse Foundation and the specification name changed, the name was changed to "Jakarta RESTful Web Services Adapter". + + Only the name has changed, there is no functional difference. + + For other features renamed in Nablarch 6, see :ref:`renamed_features_in_nablarch_6`. + Provides the following adapter to use in :ref:`RESTful web service `. @@ -53,7 +61,7 @@ Module list Using RESTful web services under Jersey environment ------------------------------------------------------- -If the implementation of `JAX-RS(external site) `_ bundled with the web application server is `Jersey(external site) `_ , use the adapter for Jersey. +If the implementation of `Jakarta RESTful Web Services(external site) `_ bundled with the web application server is `Jersey(external site) `_ , use the adapter for Jersey. An application of Jersey adapter is shown below. @@ -87,7 +95,7 @@ For :java:extdoc:`JaxRsMethodBinderFactory#setHandlerList `_ bundled with the web application server is `RESTEasy (external site) `_ , use the adapter for RESTEasy. +If the implementation of `Jakarta RESTful Web Services (external site) `_ bundled with the web application server is `RESTEasy (external site) `_ , use the adapter for RESTEasy. An application of RESTEasy adapter is shown below. diff --git a/en/application_framework/adaptors/mail_sender_thymeleaf_adaptor.rst b/en/application_framework/adaptors/mail_sender_thymeleaf_adaptor.rst index 825b198f1..bb8573eae 100644 --- a/en/application_framework/adaptors/mail_sender_thymeleaf_adaptor.rst +++ b/en/application_framework/adaptors/mail_sender_thymeleaf_adaptor.rst @@ -21,7 +21,7 @@ Module list .. tip:: - Tests are conducted using Thymeleaf version 3.0.9 RELEASE. + Tests are conducted using Thymeleaf version 3.1.1.RELEASE. When changing the version, test in the project to confirm that there are no problems. Configuration for using the E-mail Thymeleaf adapter diff --git a/en/application_framework/adaptors/router_adaptor.rst b/en/application_framework/adaptors/router_adaptor.rst index cab7af4e5..1d8cae25b 100644 --- a/en/application_framework/adaptors/router_adaptor.rst +++ b/en/application_framework/adaptors/router_adaptor.rst @@ -112,9 +112,9 @@ Example of mapping URL to business action .. _router_adaptor_path_annotation: -Mapping in JAX-RS Path Annotation --------------------------------------------------------- -Since version 1.2.0 of this adapter, it is possible to map routing using the ``javax.ws.rs.Path`` annotation (hereafter referred to as ``Path`` annotation) in JAX-RS. +Mapping in Jakarta RESTful Web Services Path Annotation +------------------------------------------------------------- +Since version 1.2.0 of this adapter, it is possible to map routing using the ``jakarta.ws.rs.Path`` annotation (hereafter referred to as ``Path`` annotation) in Jakarta RESTful Web Services. This section describes how to enable routing with ``Path`` annotations for existing :ref:`RESTful Web Service ` and details of the various configurations. @@ -170,7 +170,7 @@ In addition, this :java:extdoc:`JaxRsPathOptionsProvider ` . diff --git a/en/application_framework/adaptors/web_thymeleaf_adaptor.rst b/en/application_framework/adaptors/web_thymeleaf_adaptor.rst index cd5eb33c9..888d9277c 100644 --- a/en/application_framework/adaptors/web_thymeleaf_adaptor.rst +++ b/en/application_framework/adaptors/web_thymeleaf_adaptor.rst @@ -22,7 +22,7 @@ Module list .. tip:: - Tests are conducted using Thymeleaf version 3.0.9 RELEASE. + Tests are conducted using Thymeleaf version 3.1.1 RELEASE. When changing the version, test in the project to confirm that there are no problems. Configuration for using the web application Thymeleaf adapter @@ -61,8 +61,8 @@ The configuration example of the component configuration file is shown below. Though ``org.thymeleaf.templateresolver.ServletContextTemplateResolver`` is present in the implementation class of ``ITemplateResolver`` , it cannot be registered to the :ref:`repository` for the following reasons: - * ``javax.servlet.ServletContext`` is required as a constructor argument (it has no default constructor). - * ``javax.servlet.ServletContext`` cannot be accessed when building a system repository and objects cannot be created by :ref:`factory `. + * ``jakarta.servlet.ServletContext`` is required as a constructor argument (it has no default constructor). + * ``jakarta.servlet.ServletContext`` cannot be accessed when building a system repository and objects cannot be created by :ref:`factory `. For this reason, use another implementation class such as ``ClassLoaderTemplateResolver`` and not ``ServletContextTemplateResolver`` . diff --git a/en/application_framework/application_framework/batch/functional_comparison.rst b/en/application_framework/application_framework/batch/functional_comparison.rst index 9913b7d81..68159883d 100644 --- a/en/application_framework/application_framework/batch/functional_comparison.rst +++ b/en/application_framework/application_framework/batch/functional_comparison.rst @@ -1,23 +1,23 @@ .. _`batch-functional_comparison`: -Function Comparison Between JSR-compliant Batch Application and Nablarch Batch Application +Function Comparison Between Jakarta Batch-compliant Batch Application and Nablarch Batch Application ---------------------------------------------------------------------------------------------------- This section compares the following features: * :doc:`jsr352/index` * :doc:`nablarch_batch/index` -.. list-table:: Function comparison (JSR: Defined in JSR specifications A: Provided B: Partially provided C: Not provided D: Not applicable) +.. list-table:: Function comparison (Z: Defined in Jakarta Batch specifications A: Provided B: Partially provided C: Not provided D: Not applicable) :header-rows: 1 :class: white-space-normal :widths: 30 35 35 * - Function - - Compliant with JSR352 [#jsr]_ + - Compliant with Jakarta Batch [#jsr]_ - Nablarch batch * - Arbitrary parameters can be configured at startup - - JSR + - Z - A |br| :ref:`To the manual ` * - Simultaneous execution of the same batch applications can be prevented @@ -25,7 +25,7 @@ This section compares the following features: - A |br| :ref:`To the manual ` * - Batch applications that are running, can be safely stopped from the outside - - JSR + - Z - A |br| :ref:`To the manual ` * - The maximum number of records to be processed in one execution can be specified. @@ -33,27 +33,27 @@ This section compares the following features: - A |br| :ref:`To the manual ` * - A fixed number of record units can be committed - - JSR + - Z - A |br| :ref:`To the manual ` * - Can re-run from the point of failure - - JSR + - Z - B |br| [#resumable]_ * - Business processes can be executed in parallel by multiple threads - - JSR + - Z - A |br| :ref:`To the manual ` * - Processing can be continued ignoring specific exceptions (processing can be continued after rollback) - - JSR + - Z - C |br| [#skip_exception]_ * - Processing can be retried when a specific exception occurs - - JSR + - Z - B |br| [#retry_exception]_ * - The process to be executed next can be switched based on the batch application result - - JSR + - Z - C |br| [#branch_batch]_ * - Batches can be executed by monitoring input data sources at regular intervals @@ -62,12 +62,12 @@ This section compares the following features: .. [#jsr] - JSR parts are in accordance with the specifications defined in JSR352. - For details, refer to the specification of `JSR352 (external site) `_. + Z parts are in accordance with the specifications defined in Jakarta Batch. + For details, refer to the specification of `Jakarta Batch (external site) `_. .. [#jsr_max] The property to specify the maximum number to read in a single run - can be included in the implementation class :java:extdoc:`ItemReader `. + can be included in the implementation class :java:extdoc:`ItemReader `. .. [#resumable] Re-execution from the point of failure is possible by using @@ -81,7 +81,7 @@ This section compares the following features: .. [#retry_exception] :ref:`retry_handler` retries for exceptions that can be retried, but a simple retry cannot be performed for data where an exception has occurred, - as in JSR352. Exceptions to be retried cannot be specified flexibly with :ref:`retry_handler`. + as in Jakarta Batch. Exceptions to be retried cannot be specified flexibly with :ref:`retry_handler`. If the requirements cannot be met with the :ref:`retry_handler` (simple retry of the data where the exception occurred or to specify the exception flexibly), @@ -92,7 +92,7 @@ This section compares the following features: to be executed next based on the exit code will be necessary. .. [#resident_batch] - In JSR352-compliant batch applications, it is not possible to realize a batch process + In Jakarta Batch-compliant batch applications, it is not possible to realize a batch process for monitoring an input data source at regular intervals. For this reason, if such a batch application is necessary, realize using :ref:`the resident batch of Nablarch batch application `. diff --git a/en/application_framework/application_framework/batch/index.rst b/en/application_framework/application_framework/batch/index.rst index 90e2644e5..fcedcec59 100644 --- a/en/application_framework/application_framework/batch/index.rst +++ b/en/application_framework/application_framework/batch/index.rst @@ -16,11 +16,11 @@ Although a batch application can be built using either framework, creating a batch application using :doc:`nablarch_batch/index` is recommended for the following reasons. Reason - Since JSR352 has little information as of 2020 and it is difficult for experts to assign it, we recommend creating a batch application using :doc:`nablarch_batch/index`. + Since Jakarta Batch has little information as of 2020 and it is difficult for experts to assign it, we recommend creating a batch application using :doc:`nablarch_batch/index`. .. tip:: - Although the manuals up to Nablarch 5u15 recommended JSR352-compliant batch applications, the policy has changed to recommend Nablarch batch applications due to their current prevalence and high learning costs in 2020. + Although the manuals up to Nablarch 5u15 recommended Jakarta Batch-compliant batch applications, the policy has changed to recommend Nablarch batch applications due to their current prevalence and high learning costs in 2020. diff --git a/en/application_framework/application_framework/batch/jsr352/application_design.rst b/en/application_framework/application_framework/batch/jsr352/application_design.rst index d8b677d9f..56b16d186 100644 --- a/en/application_framework/application_framework/batch/jsr352/application_design.rst +++ b/en/application_framework/application_framework/batch/jsr352/application_design.rst @@ -1,6 +1,6 @@ Responsibility Assignment of Application ========================================= -This section describes the classes to be implemented and their responsibilities when creating a JSR352-compliant batch application. +This section describes the classes to be implemented and their responsibilities when creating a Jakarta Batch-compliant batch application. .. _jsr352-batchlet_design: @@ -30,8 +30,8 @@ Item reader (ItemReader class) Implements the process to read the data to be processed from the data source (file, database, etc.). Converts the read data into a form and returns the form. - Item reader is an interface specified by JSR352. - For this reason, see `JSR352 Specification(external site) `_ for details of the implementation method. + Item reader is an interface specified by Jakarta Batch. + For this reason, see `Jakarta Batch Specification(external site) `_ for details of the implementation method. Item processor (ItemProcessor class) Executes the business logic based on the data read by the item reader to generate the data to be output. @@ -39,8 +39,8 @@ Item processor (ItemProcessor class) If the output target is a database, converts the data after the execution of business logic into an entity. If the output target is not a database, converts the data after the execution of business logic to a form for output. - Item processor is an interface specified by JSR352. - For this reason, see `JSR352 Specification(external site) `_ for details of the implementation method. + Item processor is an interface specified by Jakarta Batch. + For this reason, see `Jakarta Batch Specification(external site) `_ for details of the implementation method. .. tip:: If the data read by the item reader is externally acquired data, checks the input values before executing the business logic. @@ -49,8 +49,8 @@ Item processor (ItemProcessor class) Item writer (ItemWriter class) Item writer implements the process to output the entity or form, converted by the item processor, to a database or file. - Item writer is an interface specified by JSR352. - For this reason, see `JSR352 Specification(external site) `_ for details of the implementation method. + Item writer is an interface specified by Jakarta Batch. + For this reason, see `Jakarta Batch Specification(external site) `_ for details of the implementation method. Form (form class) This class holds the data read by the item reader. A class that holds the data to be output if the output target is not a database. @@ -62,5 +62,5 @@ Form (form class) Entity (entity class) A class with a one-to-one correspondence with a table. The entity class has property corresponding to columns. -.. [#batchlet_status] For details on the character string returned by the batchlet (end status of batchlet), see `JSR352 Specification (external site) `_ . +.. [#batchlet_status] For details on the character string returned by the batchlet (end status of batchlet), see `Jakarta Batch Specification (external site) `_ . .. [#insert_select] For example, it refers to the execution of SQL that completes the process only by ``insert ~ select``. diff --git a/en/application_framework/application_framework/batch/jsr352/architecture.rst b/en/application_framework/application_framework/batch/jsr352/architecture.rst index 4b10d95ff..45a8b5bc8 100644 --- a/en/application_framework/application_framework/batch/jsr352/architecture.rst +++ b/en/application_framework/application_framework/batch/jsr352/architecture.rst @@ -13,7 +13,7 @@ Configuration of batch application The implementation will mainly be selected from the following two, the use of `jBeret(external site) `_ is recommended due to the extensive documentation and ease with which libraries can be obtained from Maven Central. * `jBeret(external site) `_ -* `jBatchof reference implementation(external site) `_ +* `jBatchof compatible implementation(external site) `_ The configuration is shown below. @@ -71,11 +71,11 @@ The process flow of Batchlet type batch application is shown below. .. image:: images/batchlet-flow.png :scale: 75 -1. Batch Runtime of JSR352 calls :java:extdoc:`NablarchStepListenerExecutor ` as the callback process before execution of batchlet step. +1. Batch Runtime of Jakarta Batch calls :java:extdoc:`NablarchStepListenerExecutor ` as the callback process before execution of batchlet step. 2. Sequentially executes the listener before executing the batchlet step. -3. `Batchlet` is executed from the Batch Runtime of JSR352. +3. `Batchlet` is executed from the Batch Runtime of Jakarta Batch. 4. `Batchlet` executes business logic is executed. (For the responsibility assignment of Batchlet, refer to the :ref:`Batchlet responsibility assignment `). -5. Batch Runtime of JSR352 calls :java:extdoc:`NablarchStepListenerExecutor ` as the callback process after execution of batchlet step. +5. Batch Runtime of Jakarta Batch calls :java:extdoc:`NablarchStepListenerExecutor ` as the callback process after execution of batchlet step. 6. Sequentially executes the listener after executing the batchlet step. (Executes in the reverse order of No 2) .. _jsr352-batch_flow_chunk: @@ -87,30 +87,30 @@ The process flow of Chunk type batch application is shown below. .. image:: images/chunk-flow.png :scale: 75 -1. Batch Runtime in JSR352 calls :java:extdoc:`NablarchStepListenerExecutor ` as the callback process before execution of chunk step. +1. Batch Runtime in Jakarta Batch calls :java:extdoc:`NablarchStepListenerExecutor ` as the callback process before execution of chunk step. 2. Sequentially executes the listener before executing the chunk step. -3. `ItemReader` of chunk step is executed from the Batch Runtime of JSR352.|br| +3. `ItemReader` of chunk step is executed from the Batch Runtime of Jakarta Batch.|br| `ItemReader` reads data from the input data source. -4. `ItemProcessor` of chunk step is executed from the Batch Runtime of JSR352.|br| +4. `ItemProcessor` of chunk step is executed from the Batch Runtime of Jakarta Batch.|br| 5. `ItemProcessor` executes the business logic using `Form` and `Entity`.|br| * Writing and updating of data to the database are not performed in this step. -6. Batch Runtime of JSR352 calls :java:extdoc:`NablarchItemWriteListenerExecutor ` as the callback process before execution of the `ItemWriter`. +6. Batch Runtime of Jakarta Batch calls :java:extdoc:`NablarchItemWriteListenerExecutor ` as the callback process before execution of the `ItemWriter`. 7. Sequentially executes the listener before executing the `ItemWriter`. -8. `ItemWriter` of chunk step is executed from the Batch Runtime of JSR352.|br| +8. `ItemWriter` of chunk step is executed from the Batch Runtime of Jakarta Batch.|br| `ItemWriter` performs results reflection processing, such as registering (updating, deleting) to a table and file output processing. -9. Batch Runtime of JSR352 calls :java:extdoc:`NablarchItemWriteListenerExecutor ` as the callback process after execution of `ItemWriter`. +9. Batch Runtime of Jakarta Batch calls :java:extdoc:`NablarchItemWriteListenerExecutor ` as the callback process after execution of `ItemWriter`. 10. Sequentially executes the listener after executing the `ItemWriter`. (Execute in the reverse order of No 7). -11. Batch Runtime of JSR352 calls :java:extdoc:`NablarchStepListenerExecutor ` as the callback process after execution of chunk step. +11. Batch Runtime of Jakarta Batch calls :java:extdoc:`NablarchStepListenerExecutor ` as the callback process after execution of chunk step. 12. Sequentially executes the listener after executing the Chunk step. (Executes in the reverse order of No 2) @@ -122,19 +122,19 @@ For the responsibility assignment of chunk step, see :ref:`responsibility assign Process flow when an exception (including error) occurs ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -If an exception occurs during batch execution, Nablarch does not catch the exception and exception handling is performed on the implementation side of JSR352. -Note that this is a specific behavior for JSR352-compliant batch application and is different from other platforms (:ref:`Web application ` and :ref:`nablarch_batch`, etc.). +If an exception occurs during batch execution, Nablarch does not catch the exception and exception handling is performed on the implementation side of Jakarta Batch. +Note that this is a specific behavior for Jakarta Batch-compliant batch application and is different from other platforms (:ref:`Web application ` and :ref:`nablarch_batch`, etc.). .. tip:: - The reason why JSR352-compliant batch application adopted such an architecture is as follows. + The reason why Jakarta Batch-compliant batch application adopted such an architecture is as follows. - JSR352-compliant batch applications provide only components for using Nablarch in JSR352, and execution control is carried out by JSR352 implementation. - For this reason, it is not possible to catch and handle all exceptions with Nablarch, and this policy is adopted to avoid complex designs that will be required if exception control is distributed between Nablarch and JSR352. + Jakarta Batch-compliant batch applications provide only components for using Nablarch in Jakarta Batch, and execution control is carried out by Jakarta Batch implementation. + For this reason, it is not possible to catch and handle all exceptions with Nablarch, and this policy is adopted to avoid complex designs that will be required if exception control is distributed between Nablarch and Jakarta Batch. Batch status when an exception occurs ``````````````````````````````````````````````` -As described above, all controls when an exception occurs are performed by the implementation of JSR352. +As described above, all controls when an exception occurs are performed by the implementation of Jakarta Batch. Refer to the specification of |jsr352| for the batch status (batch status and exit status) when an exception occurs. Retry and continuation status according to the exception type are operations in accordance with the job definition. For details of the job definition, refer to the specification of |jsr352|. @@ -142,11 +142,11 @@ For the return code that is returned by the Java process after the exception, se Log output `````````````````````````````````````````````````` -The information of the exception caught by JSR352 implementation is output as a log by JSR352 implementation. -Configure (configuration such as format and output destination) the log by referring to the logging framework manual used by JSR352 implementation. +The information of the exception caught by Jakarta Batch implementation is output as a log by Jakarta Batch implementation. +Configure (configuration such as format and output destination) the log by referring to the logging framework manual used by Jakarta Batch implementation. -Error logs, etc. explicitly output by the application can be output to the same log file as that of JSR352 -by unifying JSR352 implementation and logging framework using :ref:`log_adaptor`. +Error logs, etc. explicitly output by the application can be output to the same log file as that of Jakarta Batch +by unifying Jakarta Batch implementation and logging framework using :ref:`log_adaptor`. .. _jsr352-listener: @@ -261,7 +261,7 @@ The steps required to define a listener list are as follows: Configure in the job definition file .. code-block:: xml - + @@ -340,7 +340,7 @@ Points .. |jsr352| raw:: html - JSR352(external site) + Jakarta Batch(external site) .. |br| raw:: html diff --git a/en/application_framework/application_framework/batch/jsr352/feature_details.rst b/en/application_framework/application_framework/batch/jsr352/feature_details.rst index 5be5686ab..6d558aab6 100644 --- a/en/application_framework/application_framework/batch/jsr352/feature_details.rst +++ b/en/application_framework/application_framework/batch/jsr352/feature_details.rst @@ -12,11 +12,11 @@ How to launch the batch application feature_details/run_batch_application -* :ref:`How to launch the JSR352 batch application ` +* :ref:`How to launch the Jakarta Batch application ` Initializing the system repository -------------------------------------------------- -* :ref:`Initializing the system repository with the JSR352 batch application ` +* :ref:`Initializing the system repository with the Jakarta Batch application ` How to define a listener for application to batch jobs -------------------------------------------------------- @@ -62,7 +62,7 @@ because of the :ref:`reasons for recommending UniversalDao `_ +* `See Jakarta Batch Specification (external site) `_ Send MOM message ---------------------------------------- diff --git a/en/application_framework/application_framework/batch/jsr352/feature_details/database_reader.rst b/en/application_framework/application_framework/batch/jsr352/feature_details/database_reader.rst index 577016271..289cf0488 100644 --- a/en/application_framework/application_framework/batch/jsr352/feature_details/database_reader.rst +++ b/en/application_framework/application_framework/batch/jsr352/feature_details/database_reader.rst @@ -4,7 +4,7 @@ Chunk Step with Database as Input :depth: 3 :local: -When extracting data for processing from the database, implement :java:extdoc:`BaseDatabaseItemReader ` that is provided by this function instead of the reader provided by JSR352. +When extracting data for processing from the database, implement :java:extdoc:`BaseDatabaseItemReader ` that is provided by this function instead of the reader provided by Jakarta Batch. By implementing :java:extdoc:`BaseDatabaseItemReader ` , data can be extracted using a database connection that is exclusive for the reader. As a result, Chunk step can be implemented with database as input even in the case of databases that automatically close the cursor during transaction control. diff --git a/en/application_framework/application_framework/batch/jsr352/feature_details/operation_policy.rst b/en/application_framework/application_framework/batch/jsr352/feature_details/operation_policy.rst index 826693151..82ce25449 100644 --- a/en/application_framework/application_framework/batch/jsr352/feature_details/operation_policy.rst +++ b/en/application_framework/application_framework/batch/jsr352/feature_details/operation_policy.rst @@ -4,7 +4,7 @@ Operation Policy :depth: 3 :local: -In JSR352-compliant batch applications, fault monitoring and a log output policy in accordance with the following policies is recommended. +In Jakarta Batch-compliant batch applications, fault monitoring and a log output policy in accordance with the following policies is recommended. * Perform :ref:`jsr352-failure_monitoring` with the batch exit status. * Outputs logs for operators for recovery when an expected failure occurs, such as when the imported file does not exist. diff --git a/en/application_framework/application_framework/batch/jsr352/feature_details/pessimistic_lock.rst b/en/application_framework/application_framework/batch/jsr352/feature_details/pessimistic_lock.rst index 2648a5eb1..5be65da8c 100644 --- a/en/application_framework/application_framework/batch/jsr352/feature_details/pessimistic_lock.rst +++ b/en/application_framework/application_framework/batch/jsr352/feature_details/pessimistic_lock.rst @@ -1,6 +1,6 @@ -Pessimistic Lock for JSR352-compliant Batch Applications -============================================================ -This section shows an implementation example for pessimistic lock in a JSR352-compliant batch application. +Pessimistic Lock for Jakarta Batch-compliant Batch Applications +================================================================ +This section shows an implementation example for pessimistic lock in a Jakarta Batch-compliant batch application. By implementing with reference to the examples shown below, the lock time can be reduced and the effect on other processes can be reduced. Point diff --git a/en/application_framework/application_framework/batch/jsr352/feature_details/progress_log.rst b/en/application_framework/application_framework/batch/jsr352/feature_details/progress_log.rst index 6886fecca..d31855f7d 100644 --- a/en/application_framework/application_framework/batch/jsr352/feature_details/progress_log.rst +++ b/en/application_framework/application_framework/batch/jsr352/feature_details/progress_log.rst @@ -176,7 +176,7 @@ Job definition file Implementation examples .. code-block:: xml - + @@ -201,8 +201,8 @@ Job definition file .. important:: If the setting of retrying exceptions was performed in the chunk step, the progress log output by the listener will not function properly. - This is because the number of read logs :java:extdoc:`metrics ` being used by the listener as the number of processed logs, deviates from the actual number. + This is because the number of read logs :java:extdoc:`metrics ` being used by the listener as the number of processed logs, deviates from the actual number. - To perform the retry process using retrying exceptions when an exception occurs, calculate the number of processed logs with the implementation class :java:extdoc:`ItemWriter ` and output the progress log using :java:extdoc:`outputProgressInfo ` . + To perform the retry process using retrying exceptions when an exception occurs, calculate the number of processed logs with the implementation class :java:extdoc:`ItemWriter ` and output the progress log using :java:extdoc:`outputProgressInfo ` . diff --git a/en/application_framework/application_framework/batch/jsr352/feature_details/run_batch_application.rst b/en/application_framework/application_framework/batch/jsr352/feature_details/run_batch_application.rst index 689721813..41cc61f34 100644 --- a/en/application_framework/application_framework/batch/jsr352/feature_details/run_batch_application.rst +++ b/en/application_framework/application_framework/batch/jsr352/feature_details/run_batch_application.rst @@ -1,4 +1,4 @@ -Launching the JSR352 Batch Application +Launching the Jakarta Batch Application ================================================== .. contents:: Table of contents :depth: 3 @@ -8,13 +8,13 @@ Launching the JSR352 Batch Application Launch the batch application -------------------------------------------------- -In the case of JSR352-compliant batch application, the batch is launched using an API specified by JSR352. +In the case of Jakarta Batch-compliant batch application, the batch is launched using an API specified by Jakarta Batch. Nablarch provides :java:extdoc:`nablarch.fw.batch.ee.Main` as the standard implementation class. This class specifies the XML file name (file name excluding .xml) of the target JOB as an execution argument. To specify the parameters during job execution, specify the launch option for :java:extdoc:`nablarch.fw.batch.ee.Main` . -The value specified in the launch option is configured in jobParameters of :java:extdoc:`JobOperator#start ` . +The value specified in the launch option is configured in jobParameters of :java:extdoc:`JobOperator#start ` . For the launch option, add ``--`` to the name and configure a value for the argument following the name. @@ -35,15 +35,15 @@ Exit code for batch application -------------------------------------------------- The exit code for the main class program mentioned above is as follows. -* Normal completion: 0 - When the exit status is other than "WARNING" and the batch status is :java:extdoc:`BatchStatus.COMPLETED ` -* Abnormal completion: 1 - When the exit status is other than "WARNING" and the batch status is not :java:extdoc:`BatchStatus.COMPLETED ` +* Normal completion: 0 - When the exit status is other than "WARNING" and the batch status is :java:extdoc:`BatchStatus.COMPLETED ` +* Abnormal completion: 1 - When the exit status is other than "WARNING" and the batch status is not :java:extdoc:`BatchStatus.COMPLETED ` * Warning completion: 2 - When the completion status is "WARNING" If the JOB is interrupted while waiting for completion, it will return an abnormal completion code. If errors such as a validation error have occurred, for which a warning has to be issued, then warning completion can be used. -The method for warning completion is to call :java:extdoc:`JobContext#setExitStatus(String) ` in chunk or batchlet, and configure the completion status as "WARNING". -Since the batch status permits an arbitrary value at the time of warning completion, even if an exception is thrown in chunk or batchlet and batch status is other than :java:extdoc:`BatchStatus.COMPLETED ` , the above mentioned class ends with a warning if the completion status is configured as "WARNING". +The method for warning completion is to call :java:extdoc:`JobContext#setExitStatus(String) ` in chunk or batchlet, and configure the completion status as "WARNING". +Since the batch status permits an arbitrary value at the time of warning completion, even if an exception is thrown in chunk or batchlet and batch status is other than :java:extdoc:`BatchStatus.COMPLETED ` , the above mentioned class ends with a warning if the completion status is configured as "WARNING". .. _jsr352_run_batch_init_repository: @@ -59,7 +59,7 @@ An example is shown below. Example of the default ``batch-boot.xml`` configuration file .. code-block:: xml - + @@ -71,7 +71,7 @@ Example of the default ``batch-boot.xml`` configuration file Example of a configuration file other than default .. code-block:: xml - + diff --git a/en/application_framework/application_framework/batch/jsr352/getting_started/batchlet/index.rst b/en/application_framework/application_framework/batch/jsr352/getting_started/batchlet/index.rst index 33b07af35..8de2e1ffe 100644 --- a/en/application_framework/application_framework/batch/jsr352/getting_started/batchlet/index.rst +++ b/en/application_framework/application_framework/batch/jsr352/getting_started/batchlet/index.rst @@ -16,15 +16,14 @@ Description of the function to be created If data is not registered, perform step 2. - 2. (If data is not registered) Execute the mailing address registration batch + 2. (If data is not registered) Reset the database to its initial state Execute the following command from the command prompt .. code-block:: bash $cd {nablarch-example-batch-ee System repository} - $mvn exec:java -Dexec.mainClass=nablarch.fw.batch.ee.Main ^ - -Dexec.args=etl-zip-code-csv-to-db-chunk + $mvn generate-resources Execute the following SQL from the console of H2 and confirm that the data is registered. @@ -73,9 +72,9 @@ Create batchlet ================================================================== ============================================================================================= Interface Implementation ================================================================== ============================================================================================= - :java:extdoc:`Batchlet` Implement batch processing. + :java:extdoc:`Batchlet` Implement batch processing. - Inherits :java:extdoc:`AbstractBatchlet`, which provides the default implementation. + Inherits :java:extdoc:`AbstractBatchlet`, which provides the default implementation. * `Batchlet#process` * `Batchlet#stop` @@ -110,11 +109,11 @@ Create batchlet } Key points of this implementation - * Inherits :java:extdoc:`AbstractBatchlet`, and performs the business process by `process` method. + * Inherits :java:extdoc:`AbstractBatchlet`, and performs the business process by `process` method. .. _getting_started_batchlet-cdi: - * :java:extdoc:`Named` and :java:extdoc:`Dependent` are assigned to the class. |br| + * :java:extdoc:`Named` and :java:extdoc:`Dependent` are assigned to the class. |br| By configuring named and dependent annotations, batchlet implementation class can be used as CDI management bean. As a result, the batchlet class name specified in the job definition can be described with the CDI management name. |br| (If CDI management bean is not used, describe with fully qualified name (FQCN)) @@ -129,7 +128,7 @@ Create a job definition file zip-code-truncate-table.xml .. code-block:: xml - + @@ -162,11 +161,11 @@ Create a job definition file * For a batch job consisting of multiple steps, define multiple `step` elements and execute the process sequentially. * Specify a name with the first letter of the batchlet class name in lowercase for the `ref` attribute of `batchlet` element. * Specify the value to be injected into the property of batchlet class in the `property` element. - * Refer to `JSR352 Specification(external site) `_ for detailed description method of the configuration file. + * Refer to |jsr352| for detailed description method of the configuration file. .. |jsr352| raw:: html - JSR352(external site) + Jakarta Batch(external site) .. |br| raw:: html diff --git a/en/application_framework/application_framework/batch/jsr352/getting_started/chunk/index.rst b/en/application_framework/application_framework/batch/jsr352/getting_started/chunk/index.rst index a65fe8625..943adaaac 100644 --- a/en/application_framework/application_framework/batch/jsr352/getting_started/chunk/index.rst +++ b/en/application_framework/application_framework/batch/jsr352/getting_started/chunk/index.rst @@ -46,7 +46,7 @@ A method to implement a batch that calculates from existing data and derives new For the process flow, see :ref:`process flow of Chunk step batch`. For responsibility assignment, see :ref:`responsibility assignment of the Chunk step`. -Batch process is configured by a listener that provides common processes such as transaction control in addition to the implementation of the interface specified in `JSR352 (external site) `_. +Batch process is configured by a listener that provides common processes such as transaction control in addition to the implementation of the interface specified in |jsr352|. For details of the listener, see :ref:`listener used in the batch application`, and :ref:`how to specify the listener`. .. _`getting_started_chunk-read`: @@ -61,8 +61,8 @@ Implements the process to fetch the data required for calculation. .. _`getting_started_chunk-form`: Create a form - In the Chunk step, use form to link data with :java:extdoc:`ItemReader` - and :java:extdoc:`ItemProcessor`. + In the Chunk step, use form to link data with :java:extdoc:`ItemReader` + and :java:extdoc:`ItemProcessor`. EmployeeForm.java .. code-block:: java @@ -96,14 +96,14 @@ Create a form .. _`getting_started_chunk-reader`: Create an ItemReader - Inherits :java:extdoc:`AbstractItemReader` and reads data. + Inherits :java:extdoc:`AbstractItemReader` and reads data. ================================================================== ============================================================================================= Interface Name Obligation ================================================================== ============================================================================================= - :java:extdoc:`ItemReader` Reads data. + :java:extdoc:`ItemReader` Reads data. - Inherits :java:extdoc:`AbstractItemReader`, which provides a empty implementation. + Inherits :java:extdoc:`AbstractItemReader`, which provides a empty implementation. * `ItemReader#open` * `ItemReader#readItem` @@ -160,14 +160,14 @@ Create an ItemReader INNER JOIN GRADE ON EMPLOYEE.GRADE_CODE = GRADE.GRADE_CODE Key points of this implementation - * :java:extdoc:`Named` and :java:extdoc:`Dependent` are assigned to the class. + * :java:extdoc:`Named` and :java:extdoc:`Dependent` are assigned to the class. For details, see :ref:`Explanation of named and dependent of batchlet`. * Read the data to be processed with `open` method. * For the location and how to create the SQL file, see :ref:`universal_dao-sql_file`. * When reading a large amount of data, to prevent straining of the memory, use :java:extdoc:`UniversalDao#defer ` to :ref:`defer the loading` of the search results. * Returns one line of data from the data read by `readItem` method. - The object returned by this method is given as an argument of `processItem` method of :java:extdoc:`ItemProcessor` that follows. + The object returned by this method is given as an argument of `processItem` method of :java:extdoc:`ItemProcessor` that follows. .. _`getting_started_chunk-business_logic`: @@ -176,16 +176,16 @@ Execute business logic Implements the business logic of bonus calculation. Create ItemProcessor - Implements :java:extdoc:`ItemProcessor` - and carries out the business logic (since the persistence process is a duty of :java:extdoc:`ItemWriter`, it is not executed). + Implements :java:extdoc:`ItemProcessor` + and carries out the business logic (since the persistence process is a duty of :java:extdoc:`ItemWriter`, it is not executed). - ================================================================== ============================================================================================= - Interface Name Obligation - ================================================================== ============================================================================================= - :java:extdoc:`ItemProcessor` Performs the business process on one line of data. + ==================================================================== ============================================================================================= + Interface Name Obligation + ==================================================================== ============================================================================================= + :java:extdoc:`ItemProcessor` Performs the business process on one line of data. - * `ItemProcessor#processItem` - ================================================================== ============================================================================================= + * `ItemProcessor#processItem` + ==================================================================== ============================================================================================= BonusCalculateProcessor.java .. code-block:: java @@ -222,7 +222,7 @@ Create ItemProcessor Key points of this implementation * At the timing when a certain number of entities (how to configure is described in :ref:`getting_started_chunk-job`) are returned by the `processItem` method, - the `writeItems` method of :java:extdoc:`ItemWriter` that follows is executed. + the `writeItems` method of :java:extdoc:`ItemWriter` that follows is executed. .. _`getting_started_chunk-persistence`: @@ -231,12 +231,12 @@ Persistence process Implements the persistence process for DB update, etc. Create ItemWriter - Implements :java:extdoc:`ItemWriter` and makes data persistence. + Implements :java:extdoc:`ItemWriter` and makes data persistence. ================================================================== ============================================================================================= Interface Name Obligation ================================================================== ============================================================================================= - :java:extdoc:`ItemWriter` Persistence of data + :java:extdoc:`ItemWriter` Persistence of data * `ItemWriter#writeItems` ================================================================== ============================================================================================= @@ -268,7 +268,7 @@ Create a file with the job execution configuration. bonus-calculate.xml .. code-block:: xml - + @@ -291,8 +291,8 @@ Create a file with the job execution configuration. * The job definition file is located under `/src/main/resources/META-INF/batch-jobs/`. * Specify the `job` name in the `id` attribute of the job element. * Configure the number of `writeItems` processed each time by the `item-count` attribute of the `chunk` element. - * Refer to `JSR352 specification (external site) `_ for detailed description method of the configuration file. + * Refer to |jsr352| for detailed description method of the configuration file. .. |jsr352| raw:: html - JSR352(external site) + Jakarta Batch(external site) diff --git a/en/application_framework/application_framework/batch/jsr352/getting_started/getting_started.rst b/en/application_framework/application_framework/batch/jsr352/getting_started/getting_started.rst index b88b82c7d..080530f45 100644 --- a/en/application_framework/application_framework/batch/jsr352/getting_started/getting_started.rst +++ b/en/application_framework/application_framework/batch/jsr352/getting_started/getting_started.rst @@ -2,7 +2,7 @@ Getting Started ========================================== -By reading this chapter, you can get the basic knowledge of the development of a batch application that conforms to Nablarch based on `JSR352 (external site) `_. +By reading this chapter, you can get the basic knowledge of the development of a batch application that conforms to Nablarch based on |jsr352|. .. tip:: Example is an sample implementation that shows how to use Nablarch's features and is not intended to be used to modify Example to create full-fledged applications. @@ -29,4 +29,4 @@ Prerequisites .. |jsr352| raw:: html - JSR352 (external site) + Jakarta Batch (external site) diff --git a/en/application_framework/application_framework/batch/jsr352/images/jsr352-configuration-diagram.png b/en/application_framework/application_framework/batch/jsr352/images/jsr352-configuration-diagram.png index 65344266f..900dde81e 100644 Binary files a/en/application_framework/application_framework/batch/jsr352/images/jsr352-configuration-diagram.png and b/en/application_framework/application_framework/batch/jsr352/images/jsr352-configuration-diagram.png differ diff --git a/en/application_framework/application_framework/batch/jsr352/images/jsr352_images.xlsx b/en/application_framework/application_framework/batch/jsr352/images/jsr352_images.xlsx index 8502dabf4..d763e8376 100644 Binary files a/en/application_framework/application_framework/batch/jsr352/images/jsr352_images.xlsx and b/en/application_framework/application_framework/batch/jsr352/images/jsr352_images.xlsx differ diff --git a/en/application_framework/application_framework/batch/jsr352/index.rst b/en/application_framework/application_framework/batch/jsr352/index.rst index 42edeafa4..a4aff14d4 100644 --- a/en/application_framework/application_framework/batch/jsr352/index.rst +++ b/en/application_framework/application_framework/batch/jsr352/index.rst @@ -1,9 +1,9 @@ .. _jsr352_batch: -JSR352-compliant Batch Application +Jakarta Batch-compliant Batch Application ==================================================================================================== This chapter provides information required for developing batch applications using a batch application framework -compliant with JSR352(Batch Applications for the Java Platform). +compliant with Jakarta Batch. .. toctree:: :maxdepth: 2 @@ -12,3 +12,11 @@ compliant with JSR352(Batch Applications for the Java Platform). application_design getting_started/getting_started feature_details + +.. tip:: + This function was called "JSR352-compliant Batch Application" until Nablarch5. + However, as Java EE was transferred to the Eclipse Foundation and the specification name changed, the name was changed to "Jakarta Batch-compliant Batch Application". + + Only the name has changed, there is no functional difference. + + For other features renamed in Nablarch 6, see :ref:`renamed_features_in_nablarch_6`. diff --git a/en/application_framework/application_framework/blank_project/CustomizeDB.rst b/en/application_framework/application_framework/blank_project/CustomizeDB.rst index 28ef9b044..b880c5367 100644 --- a/en/application_framework/application_framework/blank_project/CustomizeDB.rst +++ b/en/application_framework/application_framework/blank_project/CustomizeDB.rst @@ -153,7 +153,7 @@ Immediately after a project is generated from an archetype, the following applie * - * Web * RESTful web service - * Production environment properties(src/env/prod/resources/env.properties) - * - * JSR352-compliant batch + * - * Jakarta Batch-compliant batch * Nablarch batch * Web for container * RESTful web service for container @@ -172,7 +172,7 @@ Immediately after creating a project from an archetype, the following applies to * - * Web * RESTful web service - * Unit test environment (manual test) properties (src/env/dev/resources/env.properties) - * - * JSR352-compliant batch + * - * Jakarta Batch-compliant batch * Nablarch batch - * Unit test environment (manual test) properties (src/env/dev/resources/env.properties) * Production environment properties(src/env/prod/resources/env.properties) @@ -585,7 +585,7 @@ Refer to the following procedure and confirm communications. * :ref:`Communication confirmation of Web` * :ref:`Communication confirmation of RESTful Web service` -* :ref:`Communication confirmation of JSR352-compliant batch` +* :ref:`Communication confirmation of Jakarta Batch-compliant batch` * :ref:`Communication confirmation of Nablarch batch` * :ref:`Communication confirmation of Web for container` * :ref:`Communication confirmation of RESTful Web service for container` diff --git a/en/application_framework/application_framework/blank_project/FirstStep.rst b/en/application_framework/application_framework/blank_project/FirstStep.rst index d19b890c2..0870c6e6b 100644 --- a/en/application_framework/application_framework/blank_project/FirstStep.rst +++ b/en/application_framework/application_framework/blank_project/FirstStep.rst @@ -10,8 +10,6 @@ Initial Setup Procedure setup_blankProject/setup_Jbatch setup_blankProject/setup_NablarchBatch setup_blankProject/setup_NablarchBatch_Dbless - setup_blankProject/setup_Java11 - setup_blankProject/setup_Java17 .. toctree:: :maxdepth: 1 diff --git a/en/application_framework/application_framework/blank_project/MavenModuleStructures/index.rst b/en/application_framework/application_framework/blank_project/MavenModuleStructures/index.rst index 734748282..820efd4dc 100644 --- a/en/application_framework/application_framework/blank_project/MavenModuleStructures/index.rst +++ b/en/application_framework/application_framework/blank_project/MavenModuleStructures/index.rst @@ -27,7 +27,7 @@ Nablarch offers the following archetypes: All the archetype group IDs are ``com. * - nablarch-jaxrs-archetype - Archetype for using the RESTful web service runtime platform * - nablarch-batch-ee-archetype - - Archetype for using the JSR352-compliant batch application framework + - Archetype for using the Jakarta Batch-compliant batch application framework * - nablarch-batch-archetype - Archetype for using the Nablarch batch application runtime platform * - nablarch-batch-dbless-archetype @@ -196,9 +196,9 @@ The main directories and files are shown below. * - Directory or file - Description * - nablarch-tools.xml - - Configuration file used while executing the JSP static analysis tool + - Configuration file used while executing the Jakarta Server Pages static analysis tool * - static-analysis/jspanalysis - - Configuration file for the JSP static analysis tool is stored. + - Configuration file for the Jakarta Server Pages static analysis tool is stored. pj-jaxrs project @@ -216,7 +216,7 @@ Omitted because it is the same as web. pj-batch-ee project ======================= -Project packaged as a jar file for JSR352-compliant batch applications. +Project packaged as a jar file for Jakarta Batch-compliant batch applications. .. _firstStepBatchEEProjectStructure: @@ -254,16 +254,11 @@ Project structure | | +---entity | | | | | \---META-INF - | | | beans.xml … File required to enable CDI. + | | | beans.xml … File required to enable Jakarta Contexts and Dependency Injection. | | | - | | +---batch-jobs - | | | sample-batchlet.xml … Job file of the application for communication confirmation of the batchlet architecture. - | | | sample-chunk.xml … Job file of the application for communication confirmation of the chunk architecture. - | | | sample-etl.xml … ETL function job file. - | | | - | | \---etl-config - | | sample-etl.json … ETL function job configuration file. - | | + | | \---batch-jobs + | | sample-batchlet.xml … Job file of the application for communication confirmation of the batchlet architecture. + | | sample-chunk.xml … Job file of the application for communication confirmation of the chunk architecture. | | | \---test | +---java @@ -657,7 +652,7 @@ For the following cases, change pom.xml of each module. Example of changing the version of Nablarch used ------------------------------------------------------------------- -A configuration example when Nablarch 5u6 is used is shown below. +A configuration example when Nablarch 6u2 is used is shown below. .. code-block:: xml @@ -669,9 +664,9 @@ A configuration example when Nablarch 5u6 is used is shown below. - 5u6 + 6u2 pom import diff --git a/en/application_framework/application_framework/blank_project/beforeFirstStep.rst b/en/application_framework/application_framework/blank_project/beforeFirstStep.rst index 3848d7010..bccf68ed4 100644 --- a/en/application_framework/application_framework/blank_project/beforeFirstStep.rst +++ b/en/application_framework/application_framework/blank_project/beforeFirstStep.rst @@ -18,7 +18,7 @@ The initial setup shows how to create the following blank project. * Web projects * RESTful web service project -* JSR352-compliant batch project +* Jakarta Batch-compliant batch project * Nablarch batch project * Web project for container * RESTful web service project for container @@ -52,11 +52,11 @@ The following software are assumed to be installed in the execution environment. All projects * Maven 3.6.3 or higher -Web, RESTful web service, JSR352-compliant batch, Nablarch batch - * JDK1.8 or higher +Web, RESTful web service, Jakarta Batch-compliant batch, Nablarch batch + * JDK17 or higher Web for container, RESTful web service for container, Nablarch batch for container - * JDK11 or higher + * JDK17 or higher * Docker Desktop 2.2.0.0 or higher The following do not require advance preparation in the initial setup. @@ -69,7 +69,7 @@ The following do not require advance preparation in the initial setup. * - Software - Description * - AP server - - Use Tomcat8 to confirm the communication between the web project and RESTful web service project. Since the waitt-maven-plugin is executed from the mvn command, and the application is deployed and launched to Tomcat8 embedded in the waitt-maven-plugin during the procedure, advance preparation is not required. + - Use Jetty12 to confirm the communication between the web project and RESTful web service project. Since the jetty-ee10-maven-plugin is executed from the mvn command, and the application is deployed and launched to Jetty12 embedded in the jetty-ee10-maven-plugin during the procedure, advance preparation is not required. * - DB server - Since the H2 Database Engine (hereinafter H2) is incorporated in the archetype for communication confirmation, separate installation is not required. @@ -126,7 +126,7 @@ The specified version is reflected in pom.xml of the generated blank project as com.nablarch.profile nablarch-bom - 5u6 + 6 pom import diff --git a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Java11.rst b/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Java11.rst deleted file mode 100644 index 7b2490cdc..000000000 --- a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Java11.rst +++ /dev/null @@ -1,106 +0,0 @@ -.. _setup_blank_project_for_Java11: - ----------------------------------------------------------- -How to Setup When Using With Java11 ----------------------------------------------------------- - -When using blank projects in Java 11, perform the following procedure before communication confirmation of each blank project. - -* Add dependent module -* Add dependent module used by gsp-dba-maven-plugin -* Change of Jetty module used in automatic test (only for web projects or RESTful web service projects) -* Change of Java Version - -.. tip:: - The blank project for containers assumes Java 11, and the modifications described in this chapter have been applied beforehand. - Therefore, in a blank project for containers the procedures of this chapter are not necessary. - -.. _setup_blank_project_for_Java11_add_dependencies: - -Add dependent module -------------------------------------------------------------- - -With Java 11, some modules, such as JAXB, have been removed from the standard library. -Removed modules need to be explicitly added to dependencies. -Therefore, add the following modules to the created blank project POM. - -.. code-block:: xml - - - - - - com.sun.activation - javax.activation - 1.2.0 - - - javax.xml.bind - jaxb-api - 2.3.0 - - - com.sun.xml.bind - jaxb-core - 2.3.0 - - - com.sun.xml.bind - jaxb-impl - 2.3.0 - - - javax.annotation - javax.annotation-api - 1.3.2 - - - - -Add dependent module used by gsp-dba-maven-plugin ----------------------------------------------------------- - -Configure by referring to the following. - -`Configuration in Java11 `_ (external site) - -.. _setup_java11_jetty9: - -Change of Jetty module used in automatic test (only for web projects or RESTful web service projects) ------------------------------------------------------------------------------------------------------------------- - -The Jetty version which is configured by default in the blank project does not support Java11. -Therefore, make changes to 2 files as given below. - -* pom.xml - -.. code-block:: xml - - - - com.nablarch.framework - nablarch-testing-jetty9 - test - - - -* src/test/resources/unit-test.xml - -.. code-block:: xml - - - - -Change of Java Version ------------------------------- - -In a blank project, Java 8 is set as the Java version -that the source and class files conform to, so change the file as below. - -* pom.xml - -.. code-block:: xml - - - 11 - diff --git a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Java17.rst b/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Java17.rst deleted file mode 100644 index 55bf4fc10..000000000 --- a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Java17.rst +++ /dev/null @@ -1,135 +0,0 @@ -.. _setup_blank_project_for_Java17: - ----------------------------------------------------------- -How to Setup When Using With Java17 ----------------------------------------------------------- - -When using blank projects in Java 17, perform the following procedure before communication confirmation of each blank project. - -* Add dependent module -* Configure gsp-dba-maven-plugin to work with Java 17 -* Change of Jetty module used in automatic test (only for web projects or RESTful web service projects) -* Add --add-opens options (only for JSR352-compliant batch project) -* Change of Java Version - -Add dependent module -------------------------------------------------------------- - -With Java 11, some modules, such as JAXB, have been removed from the standard library. -Removed modules need to be explicitly added to dependencies. -Therefore, add the following modules to the created blank project POM. - -There are two differences from the :ref:`Add dependent module in Java 11 `. - -* Specify ``jaxb-impl`` version as ``2.3.5``. - - * This version includes support for Java 17 enhanced encapsulation. - -* Remove the ``jaxb-api`` artifact. - - * Because ``2.3.5`` of ``jaxb-impl`` transitively uses another artifact called ``jakarta.xml.bind-api``. - -.. code-block:: xml - - - - - - com.sun.activation - javax.activation - 1.2.0 - - - com.sun.xml.bind - jaxb-core - 2.3.0 - - - com.sun.xml.bind - jaxb-impl - 2.3.5 - - - javax.annotation - javax.annotation-api - 1.3.2 - - - - -Configure gsp-dba-maven-plugin to work with Java 17 ----------------------------------------------------------- - -Configure by referring to the following. - -`Configuration in Java17 `_ (external site) - -.. _setup_java17_jetty9: - -Change of Jetty module used in automatic test (only for web projects or RESTful web service projects) ------------------------------------------------------------------------------------------------------------------- - -The Jetty version which is configured by default in the blank project does not support Java17. -Therefore, make changes to 2 files as given below. - -* pom.xml - -.. code-block:: xml - - - - com.nablarch.framework - nablarch-testing-jetty9 - test - - - -* src/test/resources/unit-test.xml - -.. code-block:: xml - - - - - -Add --add-opens options (only for JSR352-compliant batch project) ------------------------------------------------------------------------------------------------------------------- - -Encapsulation has been enhanced in Java 17, and internal APIs such as the standard API are no longer available for reflection by default. -The canonical fix for this change would be to migrate to an alternate API. However, jBeret, the JSR352 implementation used in JSR352-compliant batch project, does not include this fix. - -Therefore, in order to run JSR352-compliant batch project in Java 17 as well, the following JVM options must be set so that the internal API can be used in reflection. - -* ``--add-opens java.base/java.lang=ALL-UNNAMED`` -* ``--add-opens java.base/java.security=ALL-UNNAMED`` - -.. tip:: - Specifying this JVM option is also the method used by WildFly, which includes jBeret. - - * `Running WildFly with SE 17 (external site) `_ - -The following is an example of a command with the options specified. - -.. code-block:: batch - - > java --add-opens java.base/java.lang=ALL-UNNAMED ^ - --add-opens java.base/java.security=ALL-UNNAMED ^ - -jar target\myapp-batch-ee-0.1.0\myapp-batch-ee-0.1.0.jar ^ - sample-batchlet - -.. tip:: - When running from Maven, the environment variable `MAVEN_OPTS (external site) `_ can be used to set the JVM options. - -Change of Java Version ------------------------------- - -In a blank project, Java 8 is set as the Java version -that the source and class files conform to, so change the file as below. - -* pom.xml - -.. code-block:: xml - - - 17 - diff --git a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Jbatch.rst b/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Jbatch.rst index 4b9f2bb86..f2a90dad0 100644 --- a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Jbatch.rst +++ b/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Jbatch.rst @@ -1,11 +1,11 @@ ========================================================= -Initial Setup of JSR352-compliant Batch Project +Initial Setup of Jakarta Batch-compliant Batch Project ========================================================= -The following is procedures of initial setup of the JSR352-compliant batch project: +The following is procedures of initial setup of the Jakarta Batch-compliant batch project: -* Generate a JSR352-compliant batch project -* Confirm communications of the JSR352-compliant batch project +* Generate a Jakarta Batch-compliant batch project +* Confirm communications of the Jakarta Batch-compliant batch project Overview of the generated project @@ -29,16 +29,12 @@ The overview of the project generated by this procedure is as follows. * - What is included in the generated project? - The following is included in the generated project: - * Basic configuration for the JSR352-compliant batch application + * Basic configuration for the Jakarta Batch-compliant batch application * Batch application for communication confirmation by the batchlet architecture * Batch application for communication confirmation by the chunk architecture - * Application for communication confirmation using the ETL function \ [#footnote-etl]_\ * Initial configuration of the tool that operates in conjunction with Maven (is imported by referring to :ref:`about_maven_parent_module`). -.. [#footnote-etl] Since the class to execute ETL exists in Nablarch, the project contains only the configuration file, DTO class and entity class used by ETL. - - For relationship with other projects and directories, see :doc:`../MavenModuleStructures/index`. @@ -139,13 +135,12 @@ The following batch applications are incorporated in the project that is generat =================== ================================================================================ Job ID Details =================== ================================================================================ -sample-batchlet Sample application implemented by the batchlet architecture. sample-chunk Sample application implemented by the chunk architecture. -sample-etl Sample application of the ETL function provided by Nablarch. +sample-batchlet Sample application implemented by the batchlet architecture. =================== ================================================================================ -Confirm the communications of the above 3 batch applications and confirm that the blank project has been successfully generated. +Confirm the communications of the above 2 batch applications and confirm that the blank project has been successfully generated. .. _firstStepBatchEEBuild: @@ -166,56 +161,6 @@ Execute the following command to build the batch application. mvn package -Launch the batch application of the batchlet architecture -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The batch application of the batchlet architecture implements the process to delete the data of the SAMPLE_USER table. - -Execute the following command. - -.. code-block:: bash - - mvn exec:java -Dexec.mainClass=nablarch.fw.batch.ee.Main -Dexec.args="'sample-batchlet'" - -If the execution is successful, the log given below will be output to ``./progress.log``. - -.. code-block:: text - - 2020-04-28 10:35:27.002 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] start job. job name: [sample-batchlet] - 2020-04-28 10:35:27.011 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] start step. job name: [sample-batchlet] step name: [step1] - 2020-04-28 10:35:27.247 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] finish step. job name: [sample-batchlet] step name: [step1] step status: [SUCCESS] - 2020-04-28 10:35:27.255 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] finish job. job name: [sample-batchlet] - -.. tip:: - - This batchlet deletes all the data in the SAMPLE_USER table. To recover deleted data, execute the :ref:`firstStepBatchEERunETL` command. - - - -.. _firstStepBatchEERunETL: - -Launch an application that uses the ETL function -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The application that uses the ETL function is configured to input data to the SAMPLE_USER table. - - -Execute the following command. - -.. code-block:: bash - - mvn exec:java -Dexec.mainClass=nablarch.fw.batch.ee.Main -Dexec.args="'sample-etl'" - -If the launch is successful, the log given below will be output to ``./progress.log``. - -.. code-block:: text - - 2020-04-28 10:37:21.921 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] start step. job name: [sample-etl] step name: [load] - 2020-04-28 10:37:21.932 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] job name: [sample-etl] step name: [load] input count: [10] - 2020-04-28 10:37:21.944 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] job name: [sample-etl] step name: [load] write table name: [SAMPLE_USER] - 2020-04-28 10:37:21.954 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] job name: [sample-etl] step name: [load] total tps: [500.00] current tps: [500.00] estimated end time: [2020/04/28 10:37:21.954] remaining count: [0] - 2020-04-28 10:37:21.963 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] finish step. job name: [sample-etl] step name: [load] step status: [COMPLETED] - 2020-04-28 10:37:21.973 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] finish job. job name: [sample-etl] - - Launch the batch application of the chunk architecture ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The batch application of the chunk architecture implements the process to extract data from the SAMPLE_USER table, edit the data, and output data to a CSV file. @@ -262,6 +207,31 @@ The following data is output to testdata/output/outputdata.csv. When checking the contents of testdata testdata/output/outputdata.csv, open the file with a text editor as the contents will be garbled if opened with excel. +Launch the batch application of the batchlet architecture +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +The batch application of the batchlet architecture implements the process to delete the data of the SAMPLE_USER table. + +Execute the following command. + +.. code-block:: bash + + mvn exec:java -Dexec.mainClass=nablarch.fw.batch.ee.Main -Dexec.args="'sample-batchlet'" + +If the execution is successful, the log given below will be output to ``./progress.log``. + +.. code-block:: text + + 2020-04-28 10:35:27.002 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] start job. job name: [sample-batchlet] + 2020-04-28 10:35:27.011 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] start step. job name: [sample-batchlet] step name: [step1] + 2020-04-28 10:35:27.247 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] finish step. job name: [sample-batchlet] step name: [step1] step status: [SUCCESS] + 2020-04-28 10:35:27.255 -INFO- progress [null] boot_proc = [] proc_sys = [batch-ee] req_id = [null] usr_id = [null] finish job. job name: [sample-batchlet] + +.. tip:: + + This batchlet deletes all the data in the SAMPLE_USER table. To recover deleted data, refer to :ref:`firstStepBatchEEProjectStructure` and copy "SAMPLE.mv.db.org" to "SAMPLE.mv.db". + + + If the communication confirmation fails for some reason ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Web.rst b/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Web.rst index 57db2aba2..0f79141eb 100644 --- a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Web.rst +++ b/en/application_framework/application_framework/blank_project/setup_blankProject/setup_Web.rst @@ -170,16 +170,23 @@ Execute the following command to start the application for communication confirm .. code-block:: text - mvn waitt:run + mvn jetty:run .. tip:: - "waitt:run" of Maven used in the above command example is a specification to use the run goal of the waitt maven plugin. + "jetty:run" of Maven used in the above command example is a specification to use the run goal of the Jetty Maven Plugin. - For information on the waitt maven plugin, see `waitt maven plugin (external site) `_. + For information on the Jetty Maven Plugin, see `Jetty Maven Plugin (external site) `_. +If the launch is successful, the log given below will be output to the console. -The browser will automatically start up if the launch is successful and the communication confirmation screen will be displayed. Read the contents of the displayed page and confirm that the launch was successful. +.. code-block:: text + + (omitted) + 2023-03-30 10:04:42.148 -INFO- nablarch.fw.web.servlet.NablarchServletContextListener [null] boot_proc = [] proc_sys = [web] req_id = [null] usr_id = [null] [nablarch.fw.web.servlet.NablarchServletContextListener#contextInitialized] initialization completed. + +If the launch is successful, access ``http://localhost:9080/`` with a browser and open the communication confirmation screen. +Read the contents of the displayed page and confirm that the launch was successful. Check the log to make sure that an error has not occurred. @@ -202,13 +209,6 @@ When acquiring the connection through JNDI only in the production environment, < and unless the code that uses the definition is written in the application, elements are not used. Therefore, a problem does not occur during the operation of the application in the development environment of the local PC. -.. tip:: - - Custom server.xml cannot be loaded in Tomcat, which is launched by waitt maven plugin. - When running the application using the waitt maven plugin, - JNDI cannot be used even if the element is defined in web.xml. - - Supplementary notes -------------------- diff --git a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_WebService.rst b/en/application_framework/application_framework/blank_project/setup_blankProject/setup_WebService.rst index b6c0a2192..f31157bfb 100644 --- a/en/application_framework/application_framework/blank_project/setup_blankProject/setup_WebService.rst +++ b/en/application_framework/application_framework/blank_project/setup_blankProject/setup_WebService.rst @@ -193,13 +193,13 @@ Execute the following command to start the application for communication confirm .. code-block:: text - mvn waitt:run-headless + mvn jetty:run .. tip:: - "waitt:run-headless" of Maven used in the above command example is a specification to use the run-headless goal of the waitt maven plugin. + "jetty:run" of Maven used in the above command example is a specification to use the run goal of the Jetty Maven Plugin. - For information on the waitt maven plugin, see `waitt maven plugin (external site) `_. + For information on the Jetty Maven Plugin, see `Jetty Maven Plugin (external site) `_. If the launch is successful, the log given below will be output to the console. diff --git a/en/application_framework/application_framework/blank_project/setup_containerBlankProject/setup_ContainerBatch.rst b/en/application_framework/application_framework/blank_project/setup_containerBlankProject/setup_ContainerBatch.rst index 520afc676..2f252d3ec 100644 --- a/en/application_framework/application_framework/blank_project/setup_containerBlankProject/setup_ContainerBatch.rst +++ b/en/application_framework/application_framework/blank_project/setup_containerBlankProject/setup_ContainerBatch.rst @@ -144,10 +144,10 @@ As you can see, the blank project is configured to create the following two imag * ``${project.artifactId}:latest`` * ``${project.artifactId}:${project.version}`` -`OpenJDK image `_ (External sites) is used as base image by default. +`OpenJDK image `_ (External sites) is used as base image by default. The base image can be changed with the ``jib.from.image`` property. -For example, if you want to use ``adoptopenjdk:11.0.11_9-jre-hotspot`` for your base image, you would write it in ``pom.xml`` . +For example, if you want to use ``eclipse-temurin:17.0.6_10-jre-jammy`` for your base image, you would write it in ``pom.xml`` . .. code-block:: xml @@ -155,7 +155,7 @@ For example, if you want to use ``adoptopenjdk:11.0.11_9-jre-hotspot`` for your - adoptopenjdk:11.0.11_9-jre-hotspot + eclipse-temurin:17.0.6_10-jre-jammy @@ -170,7 +170,7 @@ For example, if you want to use ``adoptopenjdk:11.0.11_9-jre-hotspot`` for your .. code-block:: xml - adoptopenjdk@sha256:df316691a2c655de2f835a626f8611c74af67dad2cf92711f6608b54e5aa6c61 + eclipse-temurin@sha256:7dacdab7c335d90cf4e110f5744ca27d5a3ed87901a7c08022c8c12055438bd2 .. _firstStepRunContainerBatchDockerImage: diff --git a/en/application_framework/application_framework/blank_project/setup_containerBlankProject/setup_ContainerWeb.rst b/en/application_framework/application_framework/blank_project/setup_containerBlankProject/setup_ContainerWeb.rst index 16482336c..b19611db4 100644 --- a/en/application_framework/application_framework/blank_project/setup_containerBlankProject/setup_ContainerWeb.rst +++ b/en/application_framework/application_framework/blank_project/setup_containerBlankProject/setup_ContainerWeb.rst @@ -142,7 +142,7 @@ As you can see, the blank project is configured to create the following two imag `Tomcat image `_ (External sites) is used as base image by default. The base image can be changed with the ``jib.from.image`` property. -For example, if you want to use ``tomcat:9.0.31-jdk11-adoptopenjdk-hotspot`` for your base image, you would write it in ``pom.xml`` . +For example, if you want to use ``tomcat:10.1.5-jre17-temurin-jammy`` for your base image, you would write it in ``pom.xml`` . .. code-block:: xml @@ -150,7 +150,7 @@ For example, if you want to use ``tomcat:9.0.31-jdk11-adoptopenjdk-hotspot`` for - tomcat:9.0.36-jdk11-adoptopenjdk-hotspot + tomcat:10.1.5-jre17-temurin-jammy @@ -167,7 +167,7 @@ For example, if you want to use ``tomcat:9.0.31-jdk11-adoptopenjdk-hotspot`` for .. code-block:: xml - tomcat@sha256:7d59567f61e79f5dc1226a3ee26b4a4c2befc5cae182f7e0823199cf5885409b + tomcat@sha256:28fde3a9cf9ff62b250cd2ce5b8981a75eedbe6a37a9954c8432f6f52483cfb8 .. _firstStepRunContainerWebDockerImage: diff --git a/en/application_framework/application_framework/cloud_native/distributed_tracing/aws_distributed_tracing.rst b/en/application_framework/application_framework/cloud_native/distributed_tracing/aws_distributed_tracing.rst index 5b9f67c82..1e4a71175 100644 --- a/en/application_framework/application_framework/cloud_native/distributed_tracing/aws_distributed_tracing.rst +++ b/en/application_framework/application_framework/cloud_native/distributed_tracing/aws_distributed_tracing.rst @@ -116,7 +116,7 @@ Add a setting to trace HTTP requests to other services. X-Ray SDK for Java provides a class that can be used in the interface of `Apache HttpComponents(external site)`_ as an API for measuring outgoing HTTP calls. -Since using Apache HttpComponents directly is complicated, this procedure uses it via `Jersey(external site)`_, which is an implementation of JAX-RS client. +Since using Apache HttpComponents directly is complicated, this procedure uses it via `Jersey(external site)`_, which is an implementation of Jakarta RESTful Web Services client. Jersey uses ``java.net.HttpURLConnection`` for HTTP communication by default, so it needs to be configured to use Apache HttpComponents. Jersey provides the interface ``org.glassfish.jersey.client.spi.ConnectorProvider``. By registering your own ``ConnectorProvider`` implementation to the Jersey client, HTTP communication can be performed by a method other than ``java.net.HttpURLConnection``. @@ -177,9 +177,9 @@ In the following, we replace the ``HttpClientBuilder`` with the AWS SDK ``com.am import org.glassfish.jersey.apache.connector.ApacheHttpClientBuilderConfigurator; import org.glassfish.jersey.client.ClientConfig; - import javax.ws.rs.client.Client; - import javax.ws.rs.client.ClientBuilder; - import javax.ws.rs.core.Configuration; + import jakarta.ws.rs.client.Client; + import jakarta.ws.rs.client.ClientBuilder; + import jakarta.ws.rs.core.Configuration; import java.util.function.UnaryOperator; public class JerseyHttpClientWithAWSXRayFactory implements ComponentFactory { @@ -211,7 +211,7 @@ By annotating this class with ``@SystemRepositoryComponent``, it becomes a targe import nablarch.core.repository.di.config.externalize.annotation.ComponentRef; import nablarch.core.repository.di.config.externalize.annotation.ConfigValue; import nablarch.core.repository.di.config.externalize.annotation.SystemRepositoryComponent; - import javax.ws.rs.client.Client; + import jakarta.ws.rs.client.Client; @SystemRepositoryComponent public class HttpProductRepository { diff --git a/en/application_framework/application_framework/configuration/default-configuration-list.xlsx b/en/application_framework/application_framework/configuration/default-configuration-list.xlsx index ba72ac841..d72ca066b 100644 Binary files a/en/application_framework/application_framework/configuration/default-configuration-list.xlsx and b/en/application_framework/application_framework/configuration/default-configuration-list.xlsx differ diff --git a/en/application_framework/application_framework/handlers/images/JaxRsBeanValidationHandler/flow.png b/en/application_framework/application_framework/handlers/images/JaxRsBeanValidationHandler/flow.png index b955cea03..1c28026d5 100644 Binary files a/en/application_framework/application_framework/handlers/images/JaxRsBeanValidationHandler/flow.png and b/en/application_framework/application_framework/handlers/images/JaxRsBeanValidationHandler/flow.png differ diff --git a/en/application_framework/application_framework/handlers/images/JaxRsBeanValidationHandler/images.xlsx b/en/application_framework/application_framework/handlers/images/JaxRsBeanValidationHandler/images.xlsx index 9b1e2f785..54cfbc802 100644 Binary files a/en/application_framework/application_framework/handlers/images/JaxRsBeanValidationHandler/images.xlsx and b/en/application_framework/application_framework/handlers/images/JaxRsBeanValidationHandler/images.xlsx differ diff --git a/en/application_framework/application_framework/handlers/images/JaxRsResponseHandler/flow.png b/en/application_framework/application_framework/handlers/images/JaxRsResponseHandler/flow.png index 3053dd472..cacff3d07 100644 Binary files a/en/application_framework/application_framework/handlers/images/JaxRsResponseHandler/flow.png and b/en/application_framework/application_framework/handlers/images/JaxRsResponseHandler/flow.png differ diff --git a/en/application_framework/application_framework/handlers/images/JaxRsResponseHandler/images.xlsx b/en/application_framework/application_framework/handlers/images/JaxRsResponseHandler/images.xlsx index 3f369be3d..a3b260dc4 100644 Binary files a/en/application_framework/application_framework/handlers/images/JaxRsResponseHandler/images.xlsx and b/en/application_framework/application_framework/handlers/images/JaxRsResponseHandler/images.xlsx differ diff --git a/en/application_framework/application_framework/handlers/mom_messaging/message_reply_handler.rst b/en/application_framework/application_framework/handlers/mom_messaging/message_reply_handler.rst index dd577e73b..dd3c18c3d 100644 --- a/en/application_framework/application_framework/handlers/mom_messaging/message_reply_handler.rst +++ b/en/application_framework/application_framework/handlers/mom_messaging/message_reply_handler.rst @@ -41,7 +41,7 @@ Positional relationship with the :ref:`transaction_management_handler` The positional relationship with :ref:`transaction_management_handler` changes depending on whether a two-phase commit is used. Two-phase commit is used - Collates and commits the database transaction and message queue (JMS) transaction together in the transaction manager. + Collates and commits the database transaction and message queue (Jakarta Messaging) transaction together in the transaction manager. Therefore, a response message is required to be sent before the transaction control, and this handler has to be configured after the :ref:`transaction_management_handler` . Two-phase commit is not used diff --git a/en/application_framework/application_framework/handlers/rest/body_convert_handler.rst b/en/application_framework/application_framework/handlers/rest/body_convert_handler.rst index ca1c6622a..4cdbffff1 100644 --- a/en/application_framework/application_framework/handlers/rest/body_convert_handler.rst +++ b/en/application_framework/application_framework/handlers/rest/body_convert_handler.rst @@ -8,7 +8,7 @@ Request Body Conversion Handler This handler performs conversion process of request body and response body. -The format used for conversion is specified in :java:extdoc:`Consumes ` and :java:extdoc:`Produces ` annotations +The format used for conversion is specified in :java:extdoc:`Consumes ` and :java:extdoc:`Produces ` annotations which are configured in the method of resource (action) class that processes the request. This handler performs the following process. @@ -74,8 +74,8 @@ An example is shown below. Convert request body to form -------------------------------------------------- -The format used for the request body conversion is determined by :java:extdoc:`Consumes ` configured in the method that processes the request. -If MIME different from the MIME configured in :java:extdoc:`Consumes ` is configured in the Content-Type of the request header, +The format used for the request body conversion is determined by :java:extdoc:`Consumes ` configured in the method that processes the request. +If MIME different from the MIME configured in :java:extdoc:`Consumes ` is configured in the Content-Type of the request header, a status code (``415``) indicating that it is an unsupported media type is returned. An implementation example of the resource (action) method is shown below. @@ -96,7 +96,7 @@ corresponding to the ``application/json`` indicated by ``MediaType.APPLICATION_J Convert the processing result of resource (action) to response body ---------------------------------------------------------------------- -The format used for the response body conversion is determined by :java:extdoc:`Produces ` configured in the method that processes the request. +The format used for the response body conversion is determined by :java:extdoc:`Produces ` configured in the method that processes the request. An implementation example of the resource (action) method is shown below. diff --git a/en/application_framework/application_framework/handlers/rest/jaxrs_bean_validation_handler.rst b/en/application_framework/application_framework/handlers/rest/jaxrs_bean_validation_handler.rst index 6cd2787d3..4ee61ebfb 100644 --- a/en/application_framework/application_framework/handlers/rest/jaxrs_bean_validation_handler.rst +++ b/en/application_framework/application_framework/handlers/rest/jaxrs_bean_validation_handler.rst @@ -1,11 +1,20 @@ .. _jaxrs_bean_validation_handler: -JAX-RS BeanValidation Handler -================================================== +Jakarta RESTful Web Servcies Bean Validation Handler +===================================================== .. contents:: Table of contents :depth: 3 :local: +.. tip:: + This function was called "JAX-RS BeanValidation Handler" until Nablarch5. + However, as Java EE was transferred to the Eclipse Foundation and the specification name changed, the name was changed to "Jakarta RESTful Web Servcies Bean Validation Handler". + + Only the name has changed, there is no functional difference. + + For other features renamed in Nablarch 6, see :ref:`renamed_features_in_nablarch_6`. + + This handler executes :ref:`bean_validation` for Form (Bean) received by the resource (action) class. If a validation error occurs during validation, the process is not delegated to the subsequent handler, and the process is ended after sending :java:extdoc:`ApplicationException `. @@ -49,7 +58,7 @@ Configure this handler after the :ref:`body_convert_handler` Execute validation for Form (Bean) received by resource (action) ---------------------------------------------------------------------------------------------------- To validate the Form (Bean) received by the resource (action) method, -configure :java:extdoc:`Valid ` annotation for that method. +configure :java:extdoc:`Valid ` annotation for that method. An example is shown below. @@ -68,15 +77,15 @@ An example is shown below. Specify Group of Bean Validation ------------------------------------------------- -A Bean Validation group can be specified by setting the :java:extdoc:`ConvertGroup ` annotation for the method with the :java:extdoc:`Valid ` annotation set. +A Bean Validation group can be specified by setting the :java:extdoc:`ConvertGroup ` annotation for the method with the :java:extdoc:`Valid ` annotation set. -The ``from`` and ``to`` attributes must be specified for the :java:extdoc:`ConvertGroup ` annotation. +The ``from`` and ``to`` attributes must be specified for the :java:extdoc:`ConvertGroup ` annotation. Each must be specified as follows. -* ``from`` : Specify :java:extdoc:`Default.class ` as a fixed value. +* ``from`` : Specify :java:extdoc:`Default.class ` as a fixed value. - * If you set the :java:extdoc:`Valid ` annotation to a method, - the validation is considered to have set the :java:extdoc:`Default ` group and will be executed. + * If you set the :java:extdoc:`Valid ` annotation to a method, + the validation is considered to have set the :java:extdoc:`Default ` group and will be executed. * ``to`` : Specify the group of Bean Validation. diff --git a/en/application_framework/application_framework/handlers/rest/jaxrs_response_handler.rst b/en/application_framework/application_framework/handlers/rest/jaxrs_response_handler.rst index 1edf56c61..774d509f3 100644 --- a/en/application_framework/application_framework/handlers/rest/jaxrs_response_handler.rst +++ b/en/application_framework/application_framework/handlers/rest/jaxrs_response_handler.rst @@ -1,11 +1,19 @@ .. _jaxrs_response_handler: -JAX-RS Response Handler +Jakarta RESTful Web Services Response Handler ================================================== .. contents:: Table of contents :depth: 3 :local: +.. tip:: + This function was called "JAX-RS Response Handler" until Nablarch5. + However, as Java EE was transferred to the Eclipse Foundation and the specification name changed, the name was changed to "Jakarta RESTful Web Services Response Handler". + + Only the name has changed, there is no functional difference. + + For other features renamed in Nablarch 6, see :ref:`renamed_features_in_nablarch_6`. + This handler returns the response information from the subsequent handler (resource (action) class or :ref:`body_convert_handler`) to the client. If an exception and error is thrown by the subsequent handler, constructs the response information corresponding to the error and exception, and returns it to the client. diff --git a/en/application_framework/application_framework/handlers/web/SessionStoreHandler.rst b/en/application_framework/application_framework/handlers/web/SessionStoreHandler.rst index 12761ce0e..dbc5d7999 100644 --- a/en/application_framework/application_framework/handlers/web/SessionStoreHandler.rst +++ b/en/application_framework/application_framework/handlers/web/SessionStoreHandler.rst @@ -119,7 +119,14 @@ The default configuration is as follows. :Secure attribute: | Not used | To use in an HTTPS environment, configure to ``Use`` :MaxAge attribute: | Not specified -:HttpOnly attribute: | Use if the Servlet API version is 3.0 or higher + | The MaxAge attribute is not used because the cookie holding the session ID is a session cookie (cookie that is destroyed when the browser is closed) +:HttpOnly attribute: | Use + | The HttpOnly attribute is always used and cannot be changed from configuration files + +.. important:: + By default, the expiry interval of the session store is saved in the HTTP session. + If different expiry intervals are configured between multiple stores, use the value with the longest expiry interval. + (If you want to change the storage location of the expiry interval to database, Refer to :ref:`db_managed_expiration` ) To change the cookie name or attribute, refer to the example given below. @@ -151,14 +158,6 @@ To change the cookie name or attribute, refer to the example given below. -.. important:: - The MaxAge attribute is not used because the cookie holding the session ID is a session cookie (cookie that is destroyed when the browser is closed). - - The expiry interval of the session store is saved in the HTTP session. If different expiry intervals are configured between multiple stores, the longest expiry interval value is stored in the HTTP session. - -.. tip:: - Since the value of HttpOnly attribute is determined by the version of the Servlet API used in the application, an arbitrary value cannot be specified from the configuration file. - .. _`db_managed_expiration`: Save the expiration date in the database diff --git a/en/application_framework/application_framework/handlers/web/http_character_encoding_handler.rst b/en/application_framework/application_framework/handlers/web/http_character_encoding_handler.rst index 6e8520c5d..710432cfb 100644 --- a/en/application_framework/application_framework/handlers/web/http_character_encoding_handler.rst +++ b/en/application_framework/application_framework/handlers/web/http_character_encoding_handler.rst @@ -6,8 +6,8 @@ HTTP Character Encoding Control Handler :depth: 3 :local: -In this handler, the specified character encoding is configured for the request ( :java:extdoc:`HttpServletRequest ` ) -and response ( :java:extdoc:`HttpServletResponse ` ). +In this handler, the specified character encoding is configured for the request ( :java:extdoc:`HttpServletRequest ` ) +and response ( :java:extdoc:`HttpServletResponse ` ). This handler performs the following process. @@ -79,8 +79,8 @@ For example, in a system that processes requests from external sites, this suppo An example is shown below. Point - * To change the request encoding, override :java:extdoc:`resolveRequestEncoding `. - * To change the response encoding, override :java:extdoc:`resolveResponseEncoding `. + * To change the request encoding, override :java:extdoc:`resolveRequestEncoding `. + * To change the response encoding, override :java:extdoc:`resolveResponseEncoding `. .. code-block:: java diff --git a/en/application_framework/application_framework/handlers/web/http_response_handler.rst b/en/application_framework/application_framework/handlers/web/http_response_handler.rst index 0ea1fe7e1..b11fb5d99 100644 --- a/en/application_framework/application_framework/handlers/web/http_response_handler.rst +++ b/en/application_framework/application_framework/handlers/web/http_response_handler.rst @@ -21,7 +21,7 @@ Redirect Returns a response to redirect to the client. Direct response - Direct response using `getOutputStream` method of :java:extdoc:`ServletResponse `. + Direct response using `getOutputStream` method of :java:extdoc:`ServletResponse `. The process flow is as follows. diff --git a/en/application_framework/application_framework/handlers/web/multipart_handler.rst b/en/application_framework/application_framework/handlers/web/multipart_handler.rst index 1bef8e6ab..cf6fab965 100644 --- a/en/application_framework/application_framework/handlers/web/multipart_handler.rst +++ b/en/application_framework/application_framework/handlers/web/multipart_handler.rst @@ -212,7 +212,7 @@ As described in :ref:`data_converter`, :ref:`data_bind` is recommended. If the uploaded file is a binary file such as an image file, use the binary data that has been read for processing. - If the file is Java8, the byte data of the uploaded file can be read with the following implementation. + The byte data of the uploaded file can be read with the following implementation. .. code-block:: java diff --git a/en/application_framework/application_framework/libraries/data_io/data_bind.rst b/en/application_framework/application_framework/libraries/data_io/data_bind.rst index 7d8f491df..77a7c0c21 100644 --- a/en/application_framework/application_framework/libraries/data_io/data_bind.rst +++ b/en/application_framework/application_framework/libraries/data_io/data_bind.rst @@ -96,7 +96,7 @@ An implementation example to read all the data is shown below. After reading all the data, release the resource using :java:extdoc:`ObjectMapper#close ` . - However, it is possible to omit the close process in Java7 or later environments by using ``try-with-resources`` . + It is possible to omit the close process by using ``try-with-resources`` . .. _data_bind-bean_to_file: diff --git a/en/application_framework/application_framework/libraries/data_io/data_format.rst b/en/application_framework/application_framework/libraries/data_io/data_format.rst index 40fe15d63..414de4449 100644 --- a/en/application_framework/application_framework/libraries/data_io/data_format.rst +++ b/en/application_framework/application_framework/libraries/data_io/data_format.rst @@ -62,7 +62,7 @@ The fixed-length and variable-length data formats are compatible even with multi Alternative to this function :fixed-length: Use :ref:`data_bind` . :Variable length: Use :ref:`data_bind` . - :XML: :java:extdoc:`JAXB ` is recommended. + :XML: `Jakarta XML Binding `_ is recommended. :JSON: Use of OSS is recommended. For example, `Jackson (external site) `_ is widely used. @@ -482,15 +482,6 @@ Configure by explicitly mentioning the name ``XmlDataParser`` in the configurati -.. tip:: - - The API of the below versions of JDK has a bug, and a ``NullPointerException`` occurs when this function is used. To avoid this bug, update the version of JDK. - - - JDK6 6u65 or below - - JDK7 7u6 b15 or below - - For details of the failure, see `JDK-7157610 : NullPointerException occurs when parsing XML doc `_ . - Using namespaces in XML ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Namespaces may have to be used for the connection requirements with the connection destination system. Such cases are managed by defining the namespace in the format definition file. diff --git a/en/application_framework/application_framework/libraries/data_io/functional_comparison.rst b/en/application_framework/application_framework/libraries/data_io/functional_comparison.rst index 7bf1a3e4b..a9581c5a4 100644 --- a/en/application_framework/application_framework/libraries/data_io/functional_comparison.rst +++ b/en/application_framework/application_framework/libraries/data_io/functional_comparison.rst @@ -70,7 +70,7 @@ This section compares the following functions: .. [#csv_multi_format] When handling CSV of different format for each record, use :ref:`data_format`. .. [#json_layout] Input/output of JSON data is not implemented. When handling JSON data, use :ref:`data_format` or OSS. -.. [#xml_layout] Input/output of XML data is not implemented. When handling XML data, use :ref:`data_format` or JAXB. +.. [#xml_layout] Input/output of XML data is not implemented. When handling XML data, use :ref:`data_format` or Jakarta XML Binding. .. [#converter] Converters such as trim only for fixed-length data are provided. To convert the value with CSV, data format conversion has to be performed before output and after input. .. [#char_replace] Create a handler for character conversion to handle the collated characters (character conversion) of input data. diff --git a/en/application_framework/application_framework/libraries/database/functional_comparison.rst b/en/application_framework/application_framework/libraries/database/functional_comparison.rst index 8b4af4790..75886104c 100644 --- a/en/application_framework/application_framework/libraries/database/functional_comparison.rst +++ b/en/application_framework/application_framework/libraries/database/functional_comparison.rst @@ -1,6 +1,6 @@ .. _`database-functional_comparison`: -Functional Comparison Between Universal DAO and JSR317 (JPA2.0) +Functional Comparison Between Universal DAO and Jakarta Persistence ---------------------------------------------------------------------------------------------------- This section compares the following functions: @@ -19,7 +19,7 @@ This section compares the following functions: * - Function - Universal DAO - - JSR317 + - Jakarta Persistence * - Supports relationship |br| - C [#relation]_ @@ -59,7 +59,7 @@ This section compares the following functions: - A |br| :ref:`To the manual ` - A - * - Can execute Bean Validation |br| when the Entity status is incorporated in the database + * - Can execute Jakarta Bean Validation |br| when the Entity status is incorporated in the database - C [#validaiton]_ - A @@ -75,11 +75,11 @@ This section compares the following functions: .. [#criteria] Universal DAO can perform dynamic processing only for conditions and sort items. For details, see :ref:`SQL dynamic assembly ` .. [#validaiton] Nablarch performs validation when data is received from the outside, and converts to Entity and saves to database only when there is no validation error. .. [#callback] If an arbitrary process is required, it is handled by the process that calls the universal DAO. -.. [#lock] Universal DAO only supports optimistic locking. Pessimistic lock or lock mode specification at the time of search defined in JSR are not supported. (Pessimistic lock can be realized by using ``select for update`` .) +.. [#lock] Universal DAO only supports optimistic locking. Pessimistic lock or lock mode specification at the time of search defined in Jakarta Persistence are not supported. (Pessimistic lock can be realized by using ``select for update`` .) .. |jsr317| raw:: html - JSR317(External site) + Jakarta Persistence(External site) .. |br| raw:: html diff --git a/en/application_framework/application_framework/libraries/database/universal_dao.rst b/en/application_framework/application_framework/libraries/database/universal_dao.rst index b2825a274..920e174d3 100644 --- a/en/application_framework/application_framework/libraries/database/universal_dao.rst +++ b/en/application_framework/application_framework/libraries/database/universal_dao.rst @@ -8,7 +8,7 @@ Universal DAO :local: Universal DAO provides a simple O/R mapper that -uses `JPA2.0(JSR317) (external site) `_ annotations. +uses `Jakarta Persistence (external site) `_ annotations. Since Universal DAO uses a :ref:`database`, the :ref:`database` must be configured to use Universal DAO. @@ -37,15 +37,15 @@ Function overview Simple CRUD without writing SQL ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Just by adding JPA annotation to Entity, a simple CRUD can be created without writing SQL. -SQL statements are constructed at runtime based on JPA annotations. +Just by adding Jakarta Persistence annotation to Entity, a simple CRUD can be created without writing SQL. +SQL statements are constructed at runtime based on Jakarta Persistence annotations. * Registration/Batch registration * Update/Batch update by specifying the primary key * Delete/Batch delete by specifying the primary key * Search by specifying the primary key -For JPA annotations that can be used in Entity, see :ref:`universal_dao_jpa_annotations`. +For Jakarta Persistence annotations that can be used in Entity, see :ref:`universal_dao_jpa_annotations`. .. tip:: @@ -186,7 +186,7 @@ Convert type In Universal DAO, :ref:`@Temporal ` can be used to specify how to map ``java.util.Date`` and ``java.util.Calendar`` type values to the database. Since arbitrary mapping is not possible for other types, Entity properties must be defined according to the database type and specifications of the JDBC driver to be used. -Though Universal DAO uses JPA annotation information when sending automatically generated SQL to the DB, JPA annotation information is not used when sending arbitrary SQL to the DB. +Though Universal DAO uses Jakarta Persistence annotation information when sending automatically generated SQL to the DB, Jakarta Persistence annotation information is not used when sending arbitrary SQL to the DB. Therefore, the type conversion is as follows. :ref:`When executing SQL automatically generated from the Entity ` @@ -256,7 +256,7 @@ When numbering the surrogate keys, use the following annotations. * :ref:`@SequenceGenerator ` * :ref:`@TableGenerator ` -Universal DAO supports all strategies of :java:extdoc:`javax.persistence.GenerationType`. +Universal DAO supports all strategies of :java:extdoc:`jakarta.persistence.GenerationType`. GenerationType.AUTO \ @@ -350,7 +350,7 @@ Optimistic locking ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Universal DAO automatically performs optimistic locking when an Entity with :ref:`@Version ` is updated. -Throws :java:extdoc:`javax.persistence.OptimisticLockException` if an exclusive error occurs in optimistic locking. +Throws :java:extdoc:`jakarta.persistence.OptimisticLockException` if an exclusive error occurs in optimistic locking. .. important:: :ref:`@Version ` can be specified only for numeric type properties. @@ -519,9 +519,9 @@ Configuration is required to use the created class. .. _`universal_dao_jpa_annotations`: -JPA annotation that can be used for Entity +Jakarta Persistence annotation that can be used for Entity --------------------------------------------------------------------- -JPA annotations that can be used for entity are as follows. +Jakarta Persistence annotations that can be used for entity are as follows. * Annotation configured in class @@ -555,7 +555,7 @@ Therefore, be sure to use the same field and property names (getXX, setXX). .. _`universal_dao_jpa_entity`: -*javax.persistence.Entity* +*jakarta.persistence.Entity* This annotation is configured in the Entity class corresponding to the database table. When this annotation is configured, the table name is derived from the class name. @@ -572,7 +572,7 @@ Therefore, be sure to use the same field and property names (getXX, setXX). .. _`universal_dao_jpa_table`: -*javax.persistence.Table* +*jakarta.persistence.Table* This annotation is used to specify the table name. If a value is specified in the name attribute, that value will be used as the table name. @@ -581,14 +581,14 @@ Therefore, be sure to use the same field and property names (getXX, setXX). .. _`universal_dao_jpa_access`: -*javax.persistence.Access* +*jakarta.persistence.Access* This annotation is used to specify the location to configure the annotation. Refers to the field annotation only when explicitly specified in the field. .. _`universal_dao_jpa_column`: -*javax.persistence.Column* +*jakarta.persistence.Column* This annotation is used to specify the column name. If a value is specified in the name attribute, that value will be used as the column name. @@ -600,14 +600,14 @@ Therefore, be sure to use the same field and property names (getXX, setXX). .. _`universal_dao_jpa_id`: -*javax.persistence.Id* +*jakarta.persistence.Id* This annotation is configured in the primary key. In the case of a compound primary key, configure this annotation to multiple getters or fields. .. _`universal_dao_jpa_version`: -*javax.persistence.Version* +*jakarta.persistence.Version* This annotation is configured in the version column used for exclusive control. This annotation can be specified only for numeric type properties. @@ -621,7 +621,7 @@ Therefore, be sure to use the same field and property names (getXX, setXX). .. _`universal_dao_jpa_temporal`: -*javax.persistence.Temporal* +*jakarta.persistence.Temporal* This annotation specifies how to map the values of *java.util.Date* and *java.util.Calendar* types to the database. @@ -629,7 +629,7 @@ Therefore, be sure to use the same field and property names (getXX, setXX). .. _`universal_dao_jpa_generated_value`: -*javax.persistence.GeneratedValue* +*jakarta.persistence.GeneratedValue* This annotation indicates that the automatically numbered value is registered. Configures the numbering method to the strategy attribute. @@ -654,7 +654,7 @@ Therefore, be sure to use the same field and property names (getXX, setXX). .. _`universal_dao_jpa_sequence_generator`: -*javax.persistence.SequenceGenerator* +*jakarta.persistence.SequenceGenerator* This annotation has to be configured when using sequence numbering. In the name attribute, configure the same value as the generator attribute of @@ -668,7 +668,7 @@ Therefore, be sure to use the same field and property names (getXX, setXX). .. _`universal_dao_jpa_table_generator`: -*javax.persistence.TableGenerator* +*jakarta.persistence.TableGenerator* This annotation is configured when using table numbering. In the name attribute, configure the same value as the generator attribute of @@ -711,7 +711,7 @@ Data types that can be used in Bean, which maps search results, are as follows. *java.util.Date* The data type has to be specified in the database - with :ref:`@Temporal ` of JPA. + with :ref:`@Temporal ` of Jakarta Persistence. *java.sql.Date* diff --git a/en/application_framework/application_framework/libraries/database_management.rst b/en/application_framework/application_framework/libraries/database_management.rst index 1f6a37421..47e11c58e 100644 --- a/en/application_framework/application_framework/libraries/database_management.rst +++ b/en/application_framework/application_framework/libraries/database_management.rst @@ -25,7 +25,7 @@ use of :ref:`universal DAO ` is recommended for the following r Therefore, configuration for using :ref:`JDBC wrapper function ` are required. .. tip:: - For comparison of functions between :ref:`universal_dao` and JSR317 (JPA2.0), refer to :ref:`database-functional_comparison` . + For comparison of functions between :ref:`universal_dao` and Jakarta Persistence, refer to :ref:`database-functional_comparison` . .. toctree:: :hidden: diff --git a/en/application_framework/application_framework/libraries/images/mail/images.xlsx b/en/application_framework/application_framework/libraries/images/mail/images.xlsx index 0c87748af..69e61d1a6 100644 Binary files a/en/application_framework/application_framework/libraries/images/mail/images.xlsx and b/en/application_framework/application_framework/libraries/images/mail/images.xlsx differ diff --git a/en/application_framework/application_framework/libraries/images/mail/mail_system.png b/en/application_framework/application_framework/libraries/images/mail/mail_system.png index a7da7ef0a..c70eeb088 100644 Binary files a/en/application_framework/application_framework/libraries/images/mail/mail_system.png and b/en/application_framework/application_framework/libraries/images/mail/mail_system.png differ diff --git a/en/application_framework/application_framework/libraries/log.rst b/en/application_framework/application_framework/libraries/log.rst index c9707a4d1..336fda71f 100644 --- a/en/application_framework/application_framework/libraries/log.rst +++ b/en/application_framework/application_framework/libraries/log.rst @@ -834,7 +834,7 @@ Add your own items * - :java:extdoc:`Date ` |br| :java:extdoc:`Calendar ` and its subclasses |br| - :java:extdoc:`LocalDateTime ` (Java 8 or later) + :java:extdoc:`LocalDateTime ` - Output as a JSON string. The default format is ``"yyyy-MM-dd HH:mm:ss.SSS"``. To change the format, specify it with the ``datePattern`` property. diff --git a/en/application_framework/application_framework/libraries/mail.rst b/en/application_framework/application_framework/libraries/mail.rst index 0641bcd73..87fcb8f56 100644 --- a/en/application_framework/application_framework/libraries/mail.rst +++ b/en/application_framework/application_framework/libraries/mail.rst @@ -9,7 +9,7 @@ Sending Emails .. |JavaMail| raw:: html - JavaMail API(External site) + Jakarta Mail (External site) Provides the function to send emails. @@ -545,11 +545,11 @@ The following table shows the exception types and their error handling. * - Exception - Processing - * - `AddressException of JavaMail `_ when changing the email address of the send request + * - :java:extdoc:`AddressException of Jakarta Mail ` when changing the email address of the send request - Log output of the address that failed during conversion (log level: ERROR) * - :java:extdoc:`InvalidCharacterException` in :ref:`mail-mail_header_injection` - Log output of header string (log level: ERROR). - * - `SendFailureException of JavaMail `_ when email send fails + * - :java:extdoc:`SendFailureException of Jakarta Mail ` when email send fails - Log output of sent address, unsent address and invalid address (log level: ERROR) * - :java:extdoc:`Exception ` other than the above during email send - Wraps the exception and throws retry exception. diff --git a/en/application_framework/application_framework/libraries/message.rst b/en/application_framework/application_framework/libraries/message.rst index 4e10be694..cfd716c44 100644 --- a/en/application_framework/application_framework/libraries/message.rst +++ b/en/application_framework/application_framework/libraries/message.rst @@ -92,7 +92,7 @@ Defining messages in property files By default, the property file path is ``classpath:messages.properties``. Message is loaded using :java:extdoc:`java.util.Properties`. -Since Nablarch assumes that Java6 or higher is used, Unicode conversion (native2ascii) is not required as long as the messages are created in **UTF-8**. +Since Nablarch6 assumes that Java17 or higher is used, Unicode conversion (native2ascii) is not required as long as the messages are created in **UTF-8**. Example of property files .. code-block:: properties diff --git a/en/application_framework/application_framework/libraries/session_store.rst b/en/application_framework/application_framework/libraries/session_store.rst index 48472abdb..0b31f7c07 100644 --- a/en/application_framework/application_framework/libraries/session_store.rst +++ b/en/application_framework/application_framework/libraries/session_store.rst @@ -66,7 +66,7 @@ For details of each function, refer to the linked Javadoc. * :java:extdoc:`serialization by Java standard serialize (default) ` * :java:extdoc:`serialization and encryption by Java standard serialize ` -* :java:extdoc:`XML-based serialization with JAXB ` +* :java:extdoc:`XML-based serialization with Jakarta XML Binding ` Module list --------------------------------------------------------------------- @@ -318,8 +318,8 @@ Point * Generate the key using :java:extdoc:`KeyGenerator `. * Generate IV using :java:extdoc:`SecureRandom `. - Using :java:extdoc:`Base64Util ` or ``java.util.Base64.Encoder``, - which is added in Java 8, is better for base64 encoding. + Using :java:extdoc:`Base64Util ` or + ``java.util.Base64.Encoder`` is better for base64 encoding. Specify the transition destination screen when the value does not exist in the session variable ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/en/application_framework/application_framework/libraries/system_messaging/http_system_messaging.rst b/en/application_framework/application_framework/libraries/system_messaging/http_system_messaging.rst index c4ad90390..c406a3072 100644 --- a/en/application_framework/application_framework/libraries/system_messaging/http_system_messaging.rst +++ b/en/application_framework/application_framework/libraries/system_messaging/http_system_messaging.rst @@ -22,7 +22,7 @@ Also, :ref:`data_format` is used for the message format. Therefore, using the following functions is recommended. * The use of :ref:`RESTful Web service ` is recommended for the server (message receive). - * The use of Client function provided by JSR339 (JAX-RS2.0) is recommended for client (message send). + * The use of Client function provided by Jakarta RESTful Web Services is recommended for client (message send). If the use of this function is unavoidable, refer to :ref:`http_system_messaging-change_fw_header` and handle by adding the implementation in the project. diff --git a/en/application_framework/application_framework/libraries/system_messaging/mom_system_messaging.rst b/en/application_framework/application_framework/libraries/system_messaging/mom_system_messaging.rst index 9a2c92796..7d5ad810c 100644 --- a/en/application_framework/application_framework/libraries/system_messaging/mom_system_messaging.rst +++ b/en/application_framework/application_framework/libraries/system_messaging/mom_system_messaging.rst @@ -54,7 +54,7 @@ MQ connection that depends on MOM and message send/receive are performed by the Therefore, this function can be used in various MOMs by creating a class that implements the :java:extdoc:`MessagingProvider` interface. -MOM messaging is compatible with JMS +MOM messaging is compatible with Jakarta Messaging and offers :java:extdoc:`JmsMessagingProvider`. For details, refer to the linked Javadoc. diff --git a/en/application_framework/application_framework/libraries/tag.rst b/en/application_framework/application_framework/libraries/tag.rst index 76836822f..45af6293a 100644 --- a/en/application_framework/application_framework/libraries/tag.rst +++ b/en/application_framework/application_framework/libraries/tag.rst @@ -1,6 +1,6 @@ .. _`tag`: -JSP Custom Tags +Jakarta Server Pages Custom Tags ================================================== .. contents:: Table of contents @@ -13,13 +13,21 @@ JSP Custom Tags tag/tag_reference +.. tip:: + This function was called "JSP Custom Tags" until Nablarch5. + However, as Java EE was transferred to the Eclipse Foundation and the specification name changed, the name was changed to "Jakarta Server Pages Custom Tags". + + Only the name has changed, there is no functional difference. + + For other features renamed in Nablarch 6, see :ref:`renamed_features_in_nablarch_6`. + This function provides custom tags supporting creation of screens for web applications. Custom tags have the following limitations: -* They function in web containers supporting JSP 2.1 and above. -* They use JSTL for controlling conditional branches and loops etc. +* They function in web containers supporting Jakarta Server Pages 3.1 and above. +* They use Jakarta Standard Tag Library for controlling conditional branches and loops etc. * They support attributes compatible with XHTML 1.0 Transitional. * It is required to have JavaScript in the client. (See :ref:`tag-onclick_override`) * Some custom tags cannot be used with GET request. (See :ref:`tag-using_get`) @@ -168,7 +176,7 @@ Since it is assumed that custom tags and JSTL will be used, specify the taglib d .. code-block:: jsp - <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + <%@ taglib prefix="c" uri="jakarta.tags.core" %> <%@ taglib prefix="n" uri="http://tis.co.jp/nablarch" %> .. _`tag-input_form`: @@ -2606,7 +2614,7 @@ An example implementation of disabled is shown below. Specify any attributes ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Dynamic attributes are handled in custom tags using the ``javax.servlet.jsp.tagext.DynamicAttributes`` interface. +Dynamic attributes are handled in custom tags using the ``jakarta.servlet.jsp.tagext.DynamicAttributes`` interface. This makes it possible to output arbitrary attributes including attributes added in HTML5 with custom tags. For tags that output HTML, dynamic attributes can be used. diff --git a/en/application_framework/application_framework/libraries/validation.rst b/en/application_framework/application_framework/libraries/validation.rst index d5159c8a0..1c1391676 100644 --- a/en/application_framework/application_framework/libraries/validation.rst +++ b/en/application_framework/application_framework/libraries/validation.rst @@ -16,12 +16,12 @@ Nablarch offers two types of validation functions: .. toctree:: :maxdepth: 1 - Validation function compliant with Java EE7 Bean Validation (JSR349) (Bean Validation) + Validation function compliant with Jakarta Bean Validation of Jakarta EE (Bean Validation) Nablarch independent validation function (Nablarch Validation) -Input value can be checked by using any one of the functions, but it is recommended to use the Java EE7-compliant function for the following reasons. +Input value can be checked by using any one of the functions, but it is recommended to use the Jakarta EE-compliant function for the following reasons. -* Bean Validation is specified in Java EE and extensive information is available. +* Jakarta Bean Validation is specified in Jakarta EE and extensive information is available. * Developers do not have to learn how to use the independent validation of Nablarch. .. tip:: diff --git a/en/application_framework/application_framework/libraries/validation/bean_validation.rst b/en/application_framework/application_framework/libraries/validation/bean_validation.rst index 06863344f..62310765b 100644 --- a/en/application_framework/application_framework/libraries/validation/bean_validation.rst +++ b/en/application_framework/application_framework/libraries/validation/bean_validation.rst @@ -6,15 +6,15 @@ Bean Validation :depth: 3 :local: -This chapter describes the validation function compliant with Bean Validation (JSR349) of Java EE7. +This chapter describes the validation function compliant with Jakarta Bean Validation of Jakarta EE. .. important:: - The Bean Validation engine is not implemented by this function. + The Jakarta Bean Validation engine is not implemented by this function. - Java EE environments (such as WebLogic and WildFly) use the Bean Validation implementation that is bundled in the server. - For use outside Java EE environments, the Bean Validation implementation must be added to the reference library separately. - (It is recommended that the reference implementation `Hibernate Validator(external site) `_ be used.) + Jakarta EE environments (such as WebLogic and WildFly) use the Jakarta Bean Validation implementation that is bundled in the server. + For use outside Jakarta EE environments, the Jakarta Bean Validation implementation must be added to the reference library separately. + (It is recommended that the compatible implementation `Hibernate Validator(external site) `_ be used.) Function overview --------------------- @@ -79,7 +79,7 @@ Configure settings to use Bean Validation The configuration required to use Bean Validation are shown below. MessageInterpolator configuration - Configure the class that constructs the message when validation errors occur in Bean Validation (a class that implements :java:extdoc:`MessageInterpolator `). + Configure the class that constructs the message when validation errors occur in Jakarta Bean Validation (a class that implements :java:extdoc:`MessageInterpolator `). If this is not configured, then :java:extdoc:`NablarchMessageInterpolator ` which uses :ref:`message` is used. @@ -152,7 +152,7 @@ Message definition example .. tip:: When the default behavior is changed in :ref:`bean_validation-configuration`, - the message is defined according to the :java:extdoc:`MessageInterpolator ` implementation. + the message is defined according to the :java:extdoc:`MessageInterpolator ` implementation. How to configure validation rules @@ -399,7 +399,7 @@ Allowing Surrogate Pairs Performing Correlation Validation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -To perform correlation validation using multiple items, use the :java:extdoc:`@AssertTrue ` annotation of Bean Validation. +To perform correlation validation using multiple items, use the :java:extdoc:`@AssertTrue ` annotation of Jakarta Bean Validation. Implementation examples In this example, it has been verified that the email address and the confirmation email address match. @@ -420,7 +420,7 @@ Implementation examples .. important:: - Since the execution order of the validation is not guaranteed in Bean Validation, + Since the execution order of the validation is not guaranteed in Jakarta Bean Validation, correlation validation may be called even before the validation of individual items. Therefore, it is necessary to implement validation logic so that unexpected exceptions do not occur, @@ -478,7 +478,7 @@ There are cases where the same information is input multiple times, such as in b In such cases, a nested Bean is defined for the Bean for validation. .. tip:: - Since this is the specifications for Bean Validation, see Bean Validation specifications for details. + Since this is the specifications for Jakarta Bean Validation, see Jakarta Bean Validation specifications for details. An example is shown below. @@ -567,7 +567,7 @@ As shown in the example below, Define a component definition of :java:extdoc:`Be BeanValidationStrategy sorts the error messages for validation errors in the following order. - * Order of item names returned by javax.servlet.ServletRequest#getParameterNames + * Order of item names returned by jakarta.servlet.ServletRequest#getParameterNames (If the item in which the error occurred does not exist in the request parameter, it is moved to the end) Note that the value returned by ``getParameterNames`` is implementation-dependent, and the alignment order may change depending on the application server used. @@ -578,7 +578,7 @@ As shown in the example below, Define a component definition of :java:extdoc:`Be Checking User Input Values for RESTful Web Services ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Checking user input values for RESTful web services is done by setting the :java:extdoc:`Valid ` annotation on the method of the resource class that receives input values. +Checking user input values for RESTful web services is done by setting the :java:extdoc:`Valid ` annotation on the method of the resource class that receives input values. For details, see :ref:`jaxrs_bean_validation_handler_perform_validation` . @@ -640,9 +640,9 @@ By enabling this function, the JSP mentioned above can be described as follows. Embed the item name in the message when a validation error occurs ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Although the item name cannot be embedded in the message as per the Bean Validation (JSR349) specifications, +Although the item name cannot be embedded in the message as per the Jakarta Bean Validation specifications, you may want to embed the item name in the message according to the requirements etc. -Therefore, Nablarch provides a function that embeds the item name of the item in which an error has occurred, even if Bean Validation is used. +Therefore, Nablarch provides a function that embeds the item name of the item in which an error has occurred, even if Jakarta Bean Validation is used. The usage method is shown below. @@ -706,7 +706,7 @@ Generated Message Use groups of Bean Validation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The Bean Validation (JSR349) specification allows you to limit the rules used for validation to a specific group by specifying a group at the time of validation execution. +Jakarta Bean Validation specification allows you to limit the rules used for validation to a specific group by specifying a group at the time of validation execution. Nablarch also provides APIs that allow group specification in Bean Validation. The usage method is shown below. @@ -743,8 +743,8 @@ Process to perform validation ValidatorUtil.validateWithGroup(form, SampleForm.Test1.class); -See :java:extdoc:`ValidatorUtil#validateWithGroup ` -and :java:extdoc:`ValidatorUtil#validateProperty ` for details on the APIs. +See :java:extdoc:`ValidatorUtil#validateWithGroup ` +and :java:extdoc:`ValidatorUtil#validateProperty ` for details on the APIs. .. tip:: By using the group function to switch validation rules, a single form class can be shared by multiple screens and APIs. @@ -762,5 +762,4 @@ annotations and validation logic are added on the project side. For details on the implementation method, see the following links and Nablarch implementation. * `Hibernate Validator(external site) `_ -* `JSR349(external site) `_ - +* `Jakarta Bean Validation(external site) `_ diff --git a/en/application_framework/application_framework/libraries/validation/functional_comparison.rst b/en/application_framework/application_framework/libraries/validation/functional_comparison.rst index e46c2ddd5..2c8594c8b 100644 --- a/en/application_framework/application_framework/libraries/validation/functional_comparison.rst +++ b/en/application_framework/application_framework/libraries/validation/functional_comparison.rst @@ -11,7 +11,7 @@ This section compares the validation capabilities of Nablarch with those of |jsr * - Function - Bean |br| Validation - Nablarch |br| Validation - - JSR 349 + - Jakarta |br| Bean Validation * - Items to be validated can be specified - A [#property_validation]_ - A |br| :ref:`To the manual ` @@ -70,7 +70,7 @@ This section compares the validation capabilities of Nablarch with those of |jsr .. |jsr349| raw:: html - JSR349(external site) + Jakarta Bean Validation(external site) .. |br| raw:: html diff --git a/en/application_framework/application_framework/nablarch/architecture.rst b/en/application_framework/application_framework/nablarch/architecture.rst index 3aed796be..91783eed9 100644 --- a/en/application_framework/application_framework/nablarch/architecture.rst +++ b/en/application_framework/application_framework/nablarch/architecture.rst @@ -71,7 +71,7 @@ An interceptor is a handler that is dynamically added to the handler queue durin For example, if a process (handler) is added only for a specific request, or to execute a process (handler) by switching the configuration value for each request, an interceptor would be more suitable than a handler. .. tip:: - Interceptors perform the same process as the interceptors defined in CDI (JSR-346) of Java EE. + Interceptors perform the same process as the interceptors defined in Jakarta Contexts and Dependency Injection of Jakarta EE. .. important:: The execution order of interceptors must be configured in the configuration file. diff --git a/en/application_framework/application_framework/nablarch/platform.rst b/en/application_framework/application_framework/nablarch/platform.rst index 74c628e2e..37fa53975 100644 --- a/en/application_framework/application_framework/nablarch/platform.rst +++ b/en/application_framework/application_framework/nablarch/platform.rst @@ -10,96 +10,60 @@ Operating Environment This section describes the operating environment of the Nablarch framework. .. tip:: - For operating environments concerning contents other than the Nablarch framework (example: UI development platform), + For operating environments concerning contents other than the Nablarch framework (example: Nablarch SQL Executor), see the documentation of each content. Environment Requirements of the Nablarch Framework ----------------------------------------------------- The Nablarch framework is built using only the Java standard specifications and requires at least the following for operation. -* Java SE 6 +* Java SE 17 * JDBC 3.0 -The following Java standard specifications are required depending on the Nablarch function being used. +The following Jakarta EE specifications are required depending on the Nablarch function being used. -* JavaServer Pages Standard Tag Library 1.1 -* JavaBeans Activation Framework 1.1 -* JavaServer Pages 2.1 -* Java Servlet 2.5 -* JavaMail API 1.4 -* Java Message Service API 1.1-rev-1 -* Java Persistence 2.0 -* Batch Applications for the Java Platform 1.0 -* Bean Validation 1.1 -* Java API for RESTful Web Services (JAX-RS) 2.0 +* Jakarta Standard Tag Library 3.0 +* Jakarta Activation 2.1 +* Jakarta Server Pages 3.1 +* Jakarta Servlet 6.0 +* Jakarta Mail 2.1 +* Jakarta Messaging 3.1 +* Jakarta Persistence 3.1 +* Jakarta Batch 2.1 +* Jakarta Bean Validation 3.0 +* Jakarta RESTful Web Services 3.1 .. important:: Although the version number shown here indicates a specific version, a higher than the indicated version number can be used. - This is because backward compatibility is basically maintained when the Java standard specifications are upgraded. + This is because backward compatibility is basically maintained when the Java standard specifications and Jakarta EE specifications are upgraded. Test environment of Nablarch framework ----------------------------------------------------- The Nablarch framework has been tested and verified to operate properly in the following environments. Java - * Java SE 6/7/8/11 [#java11]_/17 [#java17]_ + * Java SE 17 Database - * Oracle Database 12c/19c/21c/23c - * IBM Db2 10.5/11.5 + * Oracle Database 19c/21c/23c + * IBM Db2 11.5 * SQL Server 2017/2019/2022 - * PostgreSQL 10.0/11.5/12.2/13.2/14.0/15.2 + * PostgreSQL 12.2/13.2/14.0/15.2 Application server - * Oracle Weblogic Server 14.1.1 - * WebSphere Application Server 9.0.5.8 - * WildFly 26.0.1.Final - * Apache Tomcat 9.0.54 + * WildFly 30.0.1.Final + * Apache Tomcat 10.1.17 -Java EE - * Hibernate Validator 5.3.6.Final - * JBeret 1.3.4.Final +Jakarta EE + * Hibernate Validator 8.0.0.Final + * JBeret 2.1.1.Final MOM (Message oriented middleware) * WebSphere MQ 7 Browser PC - * Internet Explorer 11 * Microsoft Edge * Mozilla Firefox * Google Chrome * Safari - Smart phone - * Safari(iOS) - * Google Chrome(Android) - -Operational results of Nablarch framework ------------------------------------------------------ -The operation results of February 2016 are shown below. - -OS - * RedHat Enterprise Linux 5/6 - * WindowsServer 2008 - * AIX 7 - -Java - * Java SE 6/7/8 - -Database - * Oracle Database 11g/12c - * DB2 10 - * SQLServer 2008 - * PostgreSQL 9 - -Application server - * Oracle Weblogic Server 11g/12c - * WebSphere Application Server 7/8 - * JBoss Application Server 7 - * Apache Tomcat 6/7/8 - -MOM (Message oriented middleware) - * WebSphere MQ 7 - -.. [#java11] When used with Java11, the configurations are required to be changed separately. For information on how to configure, see :doc:`../blank_project/setup_blankProject/setup_Java11`. -.. [#java17] When used with Java17, the configurations are required to be changed separately. For information on how to configure, see :doc:`../blank_project/setup_blankProject/setup_Java17`. diff --git a/en/application_framework/application_framework/nablarch/policy.rst b/en/application_framework/application_framework/nablarch/policy.rst index 3ea723e08..39431d554 100644 --- a/en/application_framework/application_framework/nablarch/policy.rst +++ b/en/application_framework/application_framework/nablarch/policy.rst @@ -88,15 +88,14 @@ Since the object on the :ref:`repository` is a singleton, it must be thread-safe Thread-unsafe functions (for example, database connection, etc.) have been specified on Javadoc as thread-unsafe. -Compliant with Java6 +Compliant with Java17 -------------------------------------------------- -Nablarch production code is compliant with Java6 and does not use the APIs provided in Java7 or later. +Nablarch production code is compliant with Java17 and does not use the APIs provided in Java18 or later. -Since the latest version during development was Java6, -Nablarch remains Java6 compliant to maintain backward compatibility with existing projects that have implemented Nablarch. +This is to maintain backward compatibility for existing Nablarch 6 implementation projects. -When developing an application that uses Nablarch, Java6 or a later version can be used, -and APIs provided in Java7 or later can also be used without any problem. +When developing an application that uses Nablarch, Java17 or a later version can be used, +and APIs provided in Java18 or later can also be used without any problem. .. _nablarch_architecture-backward_compatible: diff --git a/en/application_framework/application_framework/web/architecture.rst b/en/application_framework/application_framework/web/architecture.rst index 3fb39dfd1..940854ca5 100644 --- a/en/application_framework/application_framework/web/architecture.rst +++ b/en/application_framework/application_framework/web/architecture.rst @@ -29,7 +29,7 @@ The process flow of web applications, from processing a request to returning a r .. image:: images/web-design.png :scale: 80 -1. :ref:`web_front_controller` (implementation class of `javax.servlet.Filter`) receives a request. +1. :ref:`web_front_controller` (implementation class of `jakarta.servlet.Filter`) receives a request. 2. :ref:`web_front_controller` delegates the processing of the request to a handler queue (handler queue). 3. `DispatchHandler` configured in the handler queue specifies the action class to be processed based on the URI and adds it to the end of the handler queue. 4. The action class executes business logic using a form class and an entity class. diff --git a/en/application_framework/application_framework/web/feature_details.rst b/en/application_framework/application_framework/web/feature_details.rst index 6f6f5428e..a627f089f 100644 --- a/en/application_framework/application_framework/web/feature_details.rst +++ b/en/application_framework/application_framework/web/feature_details.rst @@ -93,7 +93,6 @@ Screen creation :hidden: feature_details/jsp_session - feature_details/view/freemarker feature_details/view/other * When JSP is used @@ -104,7 +103,6 @@ Screen creation * When using a template engine other than JSP * :ref:`Screen development using Thymeleaf ` - * :ref:`view_freemarker` * :ref:`view_other` Internationalization @@ -125,7 +123,7 @@ For this reason, use :ref:`internationalization of message tags ` and :java:extdoc:`javax.persistence.OptimisticLockException` are thrown, and then transitions to the dedicated error screen. +In this example, :java:extdoc:`NoDataException ` and :java:extdoc:`jakarta.persistence.OptimisticLockException` are thrown, and then transitions to the dedicated error screen. .. code-block:: java diff --git a/en/application_framework/application_framework/web/feature_details/view/freemarker.rst b/en/application_framework/application_framework/web/feature_details/view/freemarker.rst deleted file mode 100644 index 2cd8b371f..000000000 --- a/en/application_framework/application_framework/web/feature_details/view/freemarker.rst +++ /dev/null @@ -1,87 +0,0 @@ -.. _view_freemarker: - -Screen Development Using FreeMarker -================================================== -This section explains screen development using `FreeMarker(external site) `_ . - -The installation procedure of FreeMarker is as follows. For more information on the procedure, see `FreeMarker document `_ . - -1. :ref:`freemarker-pom` -2. :ref:`freemarker-servlet` -3. :ref:`freemarker-create_ftl` -4. :ref:`Prevent duplicate form submission (only if necessary) ` - -.. _freemarker-pom: - -Add FreeMarker to the dependant library --------------------------------------------------- -Add FreeMarker to dependent libraries to make it available to projects. -When using Maven, add the following to POM. -This manual has been confirmed with the version described in dependency below. - -.. code-block:: xml - - - org.freemarker - freemarker-gae - 2.3.27-incubating - - -.. _freemarker-servlet: - -Configure the FreeMarkerServlet settings --------------------------------------------------- -Register ``FreeMarkerServlet`` in ``web.xml`` and make it respond to ``*.ftl``. - -Example of web.xml - .. code-block:: xml - - - freemarker - freemarker.ext.servlet.FreemarkerServlet - - - - freemarker - *.ftl - - - - TemplatePath - / - - - - - -.. _freemarker-create_ftl: - -Create a template file (ftl file) to implement an action -------------------------------------------------------------------- -Create and place a template file (ftl file). (For how to create a template, refer to the FreeMarker documentation) -Action class returns the path to the template file as a response. - -For example, to return HTML to the client using ``webapp/WEB-INF/template/index.ftl``, action class returns the response as shown below. -(webapp is the root directory of war) - -.. code-block:: java - - return new HttpResponse("/WEB-INF/template/index.ftl"); - -.. tip:: - - The mechanism to return the HTML generated by FreeMarker to the client is as follows. - - 1. :ref:`http_response_handler` performs Servlet forward to ``/WEB-INF/template/index.ftl``. - 2. In response to the ``ftl`` extension, ``FreeMarkerServlet`` is executed to generate HTML based on the template, request scope, and other data. - 3. Return the HTML that is generated to the client. - -.. _freemarker-use_token: - -Prevent double submission --------------------------------------------------- -To prevent double submission, create an action by referring to :ref:`use_token_interceptor`. - diff --git a/en/application_framework/application_framework/web/feature_details/view/other.rst b/en/application_framework/application_framework/web/feature_details/view/other.rst index 3206d0f2a..74b56bbf5 100644 --- a/en/application_framework/application_framework/web/feature_details/view/other.rst +++ b/en/application_framework/application_framework/web/feature_details/view/other.rst @@ -2,10 +2,10 @@ Screen Development Using Other Template Engines ================================================== -This section describes how to use template engines other than :ref:`web_thymeleaf_adaptor` and :ref:`FreeMarker `. +This section describes how to use template engines other than :ref:`web_thymeleaf_adaptor`. If the template engine to be used provides a Servlet for returning a response to the client using Servlet forward, -like :ref:`FreeMarker `,it can be handled by registering the Servlet in ``web.xml``. +it can be handled by registering the Servlet in ``web.xml``. In the case of a template engine that does not provide Servlet, like :ref:`web_thymeleaf_adaptor`, it can be handled by creating an implementation class of :java:extdoc:`CustomResponseWriter `. diff --git a/en/application_framework/application_framework/web/getting_started/client_create/client_create2.rst b/en/application_framework/application_framework/web/getting_started/client_create/client_create2.rst index 2aea061cc..25453b2fa 100644 --- a/en/application_framework/application_framework/web/getting_started/client_create/client_create2.rst +++ b/en/application_framework/application_framework/web/getting_started/client_create/client_create2.rst @@ -169,7 +169,7 @@ Create a JSP for the registration confirmation screen .. code-block:: jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> - <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + <%@ taglib prefix="c" uri="jakarta.tags.core" %> <%@ taglib prefix="n" uri="http://tis.co.jp/nablarch" %> diff --git a/en/application_framework/application_framework/web/getting_started/client_create/client_create4.rst b/en/application_framework/application_framework/web/getting_started/client_create/client_create4.rst index b673146df..0b6f32706 100644 --- a/en/application_framework/application_framework/web/getting_started/client_create/client_create4.rst +++ b/en/application_framework/application_framework/web/getting_started/client_create/client_create4.rst @@ -89,7 +89,7 @@ Implementation of the display process of the registration completion screen .. code-block:: jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> - <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + <%@ taglib prefix="c" uri="jakarta.tags.core" %> <%@ taglib prefix="n" uri="http://tis.co.jp/nablarch" %> <%@ page session="false" %> diff --git a/en/application_framework/application_framework/web/getting_started/downloads/client_create/create.jsp b/en/application_framework/application_framework/web/getting_started/downloads/client_create/create.jsp index 45a70a298..d6f120d1e 100644 --- a/en/application_framework/application_framework/web/getting_started/downloads/client_create/create.jsp +++ b/en/application_framework/application_framework/web/getting_started/downloads/client_create/create.jsp @@ -1,5 +1,5 @@ <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="c" uri="jakarta.tags.core" %> <%@ taglib prefix="n" uri="http://tis.co.jp/nablarch" %> <%@ page session="false" %> diff --git a/en/application_framework/application_framework/web/getting_started/project_bulk_update/index.rst b/en/application_framework/application_framework/web/getting_started/project_bulk_update/index.rst index 8d15fce92..859424b71 100644 --- a/en/application_framework/application_framework/web/getting_started/project_bulk_update/index.rst +++ b/en/application_framework/application_framework/web/getting_started/project_bulk_update/index.rst @@ -102,7 +102,7 @@ Create a form } Key points of this implementation - * By assigning :java:extdoc:`@Valid`, nested forms can also be included as targets of :ref:`Bean Validation`. + * By assigning :java:extdoc:`@Valid`, nested forms can also be included as targets of :ref:`Bean Validation`. .. _`project_bulk_update-create_bean`: @@ -327,7 +327,7 @@ Create a business action method that updates the database in a batch When an exclusive control error occurs, all updates are rolled back. .. tip:: - Since an error control handler is added to the example application, if :java:extdoc:`OptimisticLockException` occurs due to an exclusive control error, + Since an error control handler is added to the example application, if :java:extdoc:`OptimisticLockException` occurs due to an exclusive control error, the screen transitions to the exclusive control error screen. For how to create error control handler, refer to :ref:`transition to the error page for the exception class with the handler `. * Although :java:extdoc:`UniversalDao` also provides a diff --git a/en/application_framework/application_framework/web/getting_started/project_search/index.rst b/en/application_framework/application_framework/web/getting_started/project_search/index.rst index a109fd9df..051661fb4 100644 --- a/en/application_framework/application_framework/web/getting_started/project_search/index.rst +++ b/en/application_framework/application_framework/web/getting_started/project_search/index.rst @@ -288,7 +288,10 @@ Create a search result display part * The :ref:`tag-write_tag` is used to output the value. To output the value in a format such as "date" or "amount", specify the format with the `valueFormat` attribute. For more information, see :ref:`tag-format_value`. - * For information on how to use ``, see :ref:`list_search_result`. + + .. important:: + + Information on how to use `` is under preparation, so please refer to the previous version of the document from `Release Notes(Japanese Page) `_ . This completes the description of the search function. diff --git a/en/application_framework/application_framework/web/getting_started/project_upload/index.rst b/en/application_framework/application_framework/web/getting_started/project_upload/index.rst index 4b254683d..c9db183a4 100644 --- a/en/application_framework/application_framework/web/getting_started/project_upload/index.rst +++ b/en/application_framework/application_framework/web/getting_started/project_upload/index.rst @@ -360,7 +360,7 @@ Create a business action method :ref:`DataBind` to bind and get the file to the bean. * By executing :java:extdoc:`ObjectMapper#read ` for the acquired :java:extdoc:`ObjectMapper ` object, the list of bound bean can be obtained. - * :java:extdoc:`Validator ` object can be created by using + * :java:extdoc:`Validator ` object can be created by using :java:extdoc:`ValidatorUtil#getValidator `, and :ref:`Bean Validation` can be executed for any Bean. * When verification is continued up to the last row and not aborted even when an error occurs, error messages for all rows are stored after the verification is completed in :java:extdoc:`Message` list, by generating and diff --git a/en/application_framework/application_framework/web_service/functional_comparison.rst b/en/application_framework/application_framework/web_service/functional_comparison.rst index b729b730e..845503d73 100644 --- a/en/application_framework/application_framework/web_service/functional_comparison.rst +++ b/en/application_framework/application_framework/web_service/functional_comparison.rst @@ -1,7 +1,7 @@ .. _`restful_web_service_functional_comparison`: -Function Comparison of JAX-RS Support /JSR339/HTTP Messaging -============================================================= +Function Comparison of Jakarta RESTful Web Services Support /Jakarta RESTful Web Services/HTTP Messaging +============================================================================================================ .. contents:: Table of Contents :depth: 3 @@ -9,13 +9,13 @@ Function Comparison of JAX-RS Support /JSR339/HTTP Messaging This section shows the comparison of the following functions: - - :ref:`Nablarch JAX-RS support ` + - :ref:`Nablarch Jakarta RESTful Web Services support ` - :ref:`HTTP messaging ` - - `JSR 339: JAX-RS 2.0: The Java API for RESTful Web Services(external site) `_ + - `Jakarta RESTful Web Services(external site) `_ .. tip:: - Only for Nablarch's JAX-RS support and HTTP messaging only, click the mark in the table to jump to the description page of the manual. + Only for Nablarch's Jakarta RESTful Web Services support and HTTP messaging only, click the mark in the table to jump to the description page of the manual. .. |br| raw:: html @@ -26,9 +26,9 @@ This section shows the comparison of the following functions: :class: something-special-class * - Function - - JAX-RS |br| support + - Jakarta RESTful |br| Web Services |br| support - HTTP |br| messaging - - JSR 339 + - Jakarta RESTful |br| Web Services * - Request and resource method mapping - :ref:`B ` - :ref:`A ` @@ -49,7 +49,7 @@ This section shows the comparison of the following functions: - :ref:`A ` - :ref:`A ` - A - * - Injection to resource class (CDI) + * - Injection to resource class |br| (Jakarta Contexts and Dependency Injection) - C [2]_ - C [2]_ - A @@ -98,12 +98,12 @@ This section shows the comparison of the following functions: - :java:extdoc:`A ` - D -.. [1] HTTP messaging is not designed in consideration of REST. Use JAX-RS support for RESTful web services. -.. [2] CDI is not available because JAX-RS support and HTTP messaging run as Nablarch web applications. +.. [1] HTTP messaging is not designed in consideration of REST. Use Jakarta RESTful Web Services support for RESTful web services. +.. [2] Jakarta Contexts and Dependency Injection is not available because Jakarta RESTful Web Services support and HTTP messaging run as Nablarch web applications. .. [3] Create a handler for creating a request/response filter. -.. [4] Create a BodyConverter with JAX-RS support for creating an interceptor to read and write the body. +.. [4] Create a BodyConverter with Jakarta RESTful Web Services support for creating an interceptor to read and write the body. .. [5] Use data format of Nablarch to read and write the body. Create a DataRecordFormatter to change the data format. -.. [6] If JAX-RS client is needed, use a JAX-RS implementation (such as Jersey or RESTEasy). +.. [6] If Jakarta RESTful Web Services client is needed, use a Jakarta RESTful Web Services implementation (such as Jersey or RESTEasy). .. [7] It is assumed that asynchronous operation in the server is not required. Support will be considered if there is a request. .. [8] Use the function to check the request size on the web server or application server. .. [9] Each application is assumed to have different requirements. Design/implement in the application. diff --git a/en/application_framework/application_framework/web_service/http_messaging/architecture.rst b/en/application_framework/application_framework/web_service/http_messaging/architecture.rst index f8fb2d204..1340efee9 100644 --- a/en/application_framework/application_framework/web_service/http_messaging/architecture.rst +++ b/en/application_framework/application_framework/web_service/http_messaging/architecture.rst @@ -19,7 +19,7 @@ The process flow of HTTP messaging, from processing a request to returning a res .. image:: images/http_messaging_flow.png :scale: 75 -1. :ref:`WebFrontController ` (implementation class of `javax.servlet.Filter`) receives a request. +1. :ref:`WebFrontController ` (implementation class of `jakarta.servlet.Filter`) receives a request. 2. :ref:`WebFrontController ` delegates the process for the request to a handler queue (handler queue). 3. `DispatchHandler` configured in the handler queue specifies the action class to be processed based on the URI and adds it to the end of the handler queue. 4. The action class executes business logic using a form class and an entity class. |br| diff --git a/en/application_framework/application_framework/web_service/index.rst b/en/application_framework/application_framework/web_service/index.rst index 389fc81f9..0080fab2c 100644 --- a/en/application_framework/application_framework/web_service/index.rst +++ b/en/application_framework/application_framework/web_service/index.rst @@ -18,7 +18,7 @@ Although web services can be built using either framework, creating web services using :ref:`restful_web_service` is recommended for the following reasons. Reason - In :ref:`restful_web_service`, a web service can be easily built using some annotations defined in `JSR 339(external site) `_ . + In :ref:`restful_web_service`, a web service can be easily built using some annotations defined in `Jakarta RESTful Web Services(external site) `_ . On the other hand, :ref:`http_messaging` cannot be flexibly designed and implemented because of the following restrictions on the body, HTTP headers and exception control. diff --git a/en/application_framework/application_framework/web_service/rest/architecture.rst b/en/application_framework/application_framework/web_service/rest/architecture.rst index d2cbddceb..1e5a129a0 100644 --- a/en/application_framework/application_framework/web_service/rest/architecture.rst +++ b/en/application_framework/application_framework/web_service/rest/architecture.rst @@ -7,23 +7,31 @@ Architecture Overview :depth: 3 :local: -Nablarch provides the functions to create RESTful web service using the business action of a web application (JAX-RS support) -in the same way JAX-RS resource class is created. +Nablarch provides the functions to create RESTful web service using the business action of a web application (Jakarta RESTful Web Services support) +in the same way Jakarta RESTful Web Services resource class is created. -JAX-RS support is based on web applications of Nablarch. -Therefore, JAX-RS cannot use Servlet resource injection or CDI using @Context annotations, which can be used in JAX-RS. -The following annotations are available for JAX-RS support. +.. tip:: + This function was called "JAX-RS support" until Nablarch5. + However, as Java EE was transferred to the Eclipse Foundation and the specification name changed, the name was changed to "Jakarta RESTful Web Services support". + + Only the name has changed, there is no functional difference. + + For other features renamed in Nablarch 6, see :ref:`renamed_features_in_nablarch_6`. + +Jakarta RESTful Web Services support is based on web applications of Nablarch. +Therefore, Jakarta RESTful Web Services cannot use Servlet resource injection or Jakarta Contexts and Dependency Injection using @Context annotations, which can be used in Jakarta RESTful Web Services. +The following annotations are available for Jakarta RESTful Web Services support. - Produces (specify media type for the response) - Consumption (specify the media type of the request) - Valid (runs BeanValidation for the request) -For comparison of functions between JSR339 and JAX-RS support , see :ref:`restful_web_service_functional_comparison`. +For comparison of functions between Jakarta RESTful Web Services and Jakarta RESTful Web Services support , see :ref:`restful_web_service_functional_comparison`. .. important:: - JAX-RS support does not provide client-side functions. - If you need to use a JAX-RS client, use a JAX-RS implementation (such as Jersey or RESTEasy). + Jakarta RESTful Web Services support does not provide client-side functions. + If you need to use a Jakarta RESTful Web Services client, use a Jakarta RESTful Web Services implementation (such as Jersey or RESTEasy). Structure of RESTful web service ---------------------------------------- @@ -37,7 +45,7 @@ The process flow of RESTful web service, from processing a request to returning .. image:: images/rest-design.png :scale: 75 -1. :ref:`web_front_controller` (implementation class of `javax.servlet.Filter`) receives a request. +1. :ref:`web_front_controller` (implementation class of `jakarta.servlet.Filter`) receives a request. 2. :ref:`web_front_controller` delegates the processing of the request to a handler queue (handler queue). 3. `DispatchHandler` configured in the handler queue specifies the action class to be processed based on the URI and adds it to the end of the handler queue. 4. The action class executes business logic using a form class and an entity class. |br| diff --git a/en/application_framework/application_framework/web_service/rest/feature_details/resource_signature.rst b/en/application_framework/application_framework/web_service/rest/feature_details/resource_signature.rst index a7cd42bf2..b8d88e3ae 100644 --- a/en/application_framework/application_framework/web_service/rest/feature_details/resource_signature.rst +++ b/en/application_framework/application_framework/web_service/rest/feature_details/resource_signature.rst @@ -131,7 +131,7 @@ Implementation of resource class methods } .. important:: - Note that :java:extdoc:`PathParam ` specified in JSR cannot be used. + Note that :java:extdoc:`PathParam ` specified in Jakarta RESTful Web Services cannot be used. .. _rest_feature_details-query_param: @@ -178,7 +178,7 @@ Implementation of resource class methods } .. important:: - Note that :java:extdoc:`QueryParam ` specified in JSR cannot be used. + Note that :java:extdoc:`QueryParam ` specified in Jakarta RESTful Web Services cannot be used. .. _rest_feature_details-response_header: diff --git a/en/application_framework/application_framework/web_service/rest/getting_started/create/index.rst b/en/application_framework/application_framework/web_service/rest/getting_started/create/index.rst index 1eb92e2e3..144999940 100644 --- a/en/application_framework/application_framework/web_service/rest/getting_started/create/index.rst +++ b/en/application_framework/application_framework/web_service/rest/getting_started/create/index.rst @@ -89,15 +89,15 @@ Implementation of a business action method } Key points of this implementation - * To accept the request in JSON format, specify :java:extdoc:`Consumes` in the ``MediaType.APPLICATION_JSON`` annotation. - * Validates the request using the :java:extdoc:`Valid ` . + * To accept the request in JSON format, specify :java:extdoc:`Consumes` in the ``MediaType.APPLICATION_JSON`` annotation. + * Validates the request using the :java:extdoc:`Valid ` . For details, see :ref:`jaxrs_bean_validation_handler` . * Convert the form to an entity with :java:extdoc:`BeanUtil ` and register the project information in the database using :ref:`universal_dao`. * :java:extdoc:`HttpResponse` is returned as the return value, indicating that the creation of the resource is complete (status code: ``201``). Define the mapping to the URL Use :ref:`router_adaptor` to map business actions and URLs. - Use :ref:`Path annotation for JAX-RS ` for mapping. + Use :ref:`Path annotation for Jakarta RESTful Web Services ` for mapping. ProjectAction.java .. code-block:: java diff --git a/en/application_framework/application_framework/web_service/rest/getting_started/search/index.rst b/en/application_framework/application_framework/web_service/rest/getting_started/search/index.rst index 04e5d8f19..e8687a4ee 100644 --- a/en/application_framework/application_framework/web_service/rest/getting_started/search/index.rst +++ b/en/application_framework/application_framework/web_service/rest/getting_started/search/index.rst @@ -121,7 +121,7 @@ Implementation of a business action method } Key points of this implementation - * Specifies ``MediaType.APPLICATION_JSON`` in :java:extdoc:`Produces` annotation to return the search results in JSON format to the client. + * Specifies ``MediaType.APPLICATION_JSON`` in :java:extdoc:`Produces` annotation to return the search results in JSON format to the client. * Acquires the query parameter from :java:extdoc:`HttpRequest` . * Creates a form from the request parameters using :java:extdoc:`BeanUtil ` . * Validates form using :java:extdoc:`ValidatorUtil#validate `. @@ -132,7 +132,7 @@ Implementation of a business action method Define the mapping to the URL Use :ref:`router_adaptor` to map business actions and URLs. - Use :ref:`Path annotation for JAX-RS ` for mapping. + Use :ref:`Path annotation for Jakarta RESTful Web Services ` for mapping. ProjectAction.java .. code-block:: java diff --git a/en/application_framework/application_framework/web_service/rest/getting_started/update/index.rst b/en/application_framework/application_framework/web_service/rest/getting_started/update/index.rst index 6584cf321..376e2b0d1 100644 --- a/en/application_framework/application_framework/web_service/rest/getting_started/update/index.rst +++ b/en/application_framework/application_framework/web_service/rest/getting_started/update/index.rst @@ -104,19 +104,19 @@ Implementation of a business action method } Point of this implementation - * To accept the request body in JSON format, specify :java:extdoc:`Consumes` in the ``MediaType.APPLICATION_JSON`` annotation. - * Validates the request using the :java:extdoc:`Valid ` annotation. + * To accept the request body in JSON format, specify :java:extdoc:`Consumes` in the ``MediaType.APPLICATION_JSON`` annotation. + * Validates the request using the :java:extdoc:`Valid ` annotation. For details, see :ref:`jaxrs_bean_validation_handler`. * Create an entity from a form with :java:extdoc:`BeanUtil ` and update the project information using :ref:`universal_dao`. * If the update is successful, :java:extdoc:`HttpResponse` , which indicates a successful completion (status code:``200``) is returned. .. tip:: In the example application, :java:extdoc:`ErrorResponseBuilder` is uniquely extended, - response ``404`` if :java:extdoc:`NoDataException` occurs and ``409`` if :java:extdoc:`OptimisticLockException` occurs is generated and returned to the client. + response ``404`` if :java:extdoc:`NoDataException` occurs and ``409`` if :java:extdoc:`OptimisticLockException` occurs is generated and returned to the client. Define the mapping to the URL Use :ref:`router_adaptor` to map business actions and URLs. - Use :ref:`Path annotation for JAX-RS ` for mapping. + Use :ref:`Path annotation for Jakarta RESTful Web Services ` for mapping. ProjectAction.java .. code-block:: java diff --git a/en/application_framework/example/index.rst b/en/application_framework/example/index.rst index bc3d78680..b40da802c 100644 --- a/en/application_framework/example/index.rst +++ b/en/application_framework/example/index.rst @@ -47,7 +47,7 @@ For instructions on how to run the Example application, refer to the README on t Batch application \ - JSR352-compliant batch applications + Jakarta Batch-compliant batch applications https://github.com/nablarch/nablarch-example-batch-ee Nablarch Batch Application @@ -81,13 +81,3 @@ For instructions on how to run the Example application, refer to the README on t Messaging Using Tables as Queues https://github.com/nablarch/nablarch-example-db-queue - -Running on Java 11 or higher --------------------------------------------------- - -Example is assumed to run in Java 8. -If you want to run it on Java 11 or higher, you will need to modify the dependent libraries. -For more information, see the description of the blank project below. - -* :ref:`setup_blank_project_for_Java11` -* :ref:`setup_blank_project_for_Java17` diff --git a/en/conf.py b/en/conf.py index 333c396af..1125e94ed 100644 --- a/en/conf.py +++ b/en/conf.py @@ -56,9 +56,9 @@ # built documents. # # The short X.Y version. -version = '5u23' +version = '6' # The full version, including alpha/beta/rc tags. -release = '5u23' +release = '6' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. @@ -304,14 +304,15 @@ todo_include_todos=False javadoc_url_map = { - 'nablarch' : ("https://nablarch.github.io/docs/LATEST/javadoc/", 'javadoc8'), - 'javax.persistence' : ('http://docs.oracle.com/javaee/7/api/', 'javadoc8'), - 'javax.validation' : ('http://docs.oracle.com/javaee/7/api/', 'javadoc8'), - 'javax.servlet' : ('http://docs.oracle.com/javaee/7/api/', 'javadoc8'), - 'javax.batch' : ('http://docs.oracle.com/javaee/7/api/', 'javadoc8'), - 'javax.inject' : ('http://docs.oracle.com/javaee/7/api/', 'javadoc8'), - 'javax.enterprise' : ('http://docs.oracle.com/javaee/7/api/', 'javadoc8'), - 'javax.ws' : ('http://docs.oracle.com/javaee/7/api/', 'javadoc8') + 'nablarch' : ("https://nablarch.github.io/docs/" + version + "/javadoc/", 'javadoc8'), + 'jakarta.persistence' : ('https://jakarta.ee/specifications/platform/10/apidocs/', 'javadoc'), + 'jakarta.validation' : ('https://jakarta.ee/specifications/platform/10/apidocs/', 'javadoc'), + 'jakarta.servlet' : ('https://jakarta.ee/specifications/platform/10/apidocs/', 'javadoc'), + 'jakarta.batch' : ('https://jakarta.ee/specifications/platform/10/apidocs/', 'javadoc'), + 'jakarta.inject' : ('https://jakarta.ee/specifications/platform/10/apidocs/', 'javadoc'), + 'jakarta.enterprise' : ('https://jakarta.ee/specifications/platform/10/apidocs/', 'javadoc'), + 'jakarta.ws' : ('https://jakarta.ee/specifications/platform/10/apidocs/', 'javadoc'), + 'jakarta.mail' : ('https://jakarta.ee/specifications/platform/10/apidocs/', 'javadoc') } # add custom javascript @@ -322,4 +323,3 @@ def setup(app): """ extlinks = {'javadoc_url' : ('https://nablarch.github.io/docs/' + version + '/publishedApi/%s', 'path')} - diff --git a/en/development_tools/index.rst b/en/development_tools/index.rst index ec14bc0aa..8883cf1f9 100644 --- a/en/development_tools/index.rst +++ b/en/development_tools/index.rst @@ -8,6 +8,5 @@ Nablarch development tools :numbered: java_static_analysis/index - ui_dev/index testing_framework/index toolbox/index diff --git a/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/01_ClassUnitTest/01_entityUnitTest/01_entityUnitTestWithBeanValidation.rst b/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/01_ClassUnitTest/01_entityUnitTest/01_entityUnitTestWithBeanValidation.rst index 75cba2302..9eefd61eb 100644 --- a/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/01_ClassUnitTest/01_entityUnitTest/01_entityUnitTestWithBeanValidation.rst +++ b/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/01_ClassUnitTest/01_entityUnitTest/01_entityUnitTestWithBeanValidation.rst @@ -414,7 +414,7 @@ Invoke the following methods of the superclass: Test case for validation between items ======================================= -For validation between items with :java:extdoc:`@AssertTrue ` that cannot be tested with the single-item validation described above, it is necessary to create another test. +For validation between items with :java:extdoc:`@AssertTrue ` that cannot be tested with the single-item validation described above, it is necessary to create another test. Create a test case table diff --git a/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/01_ClassUnitTest/_download/UserRegistrationForm.java b/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/01_ClassUnitTest/_download/UserRegistrationForm.java index d467dd4d0..7c5dd7d08 100644 --- a/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/01_ClassUnitTest/_download/UserRegistrationForm.java +++ b/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/01_ClassUnitTest/_download/UserRegistrationForm.java @@ -6,8 +6,8 @@ import nablarch.core.validation.ee.Required; import nablarch.core.validation.ee.SystemChar; -import javax.validation.constraints.AssertTrue; -import javax.validation.groups.Default; +import jakarta.validation.constraints.AssertTrue; +import jakarta.validation.groups.Default; /** * User Registration Information Form. diff --git a/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/02_RequestUnitTest/_image/mail_image.xlsx b/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/02_RequestUnitTest/_image/mail_image.xlsx index 61b7eb41b..3875028ae 100644 Binary files a/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/02_RequestUnitTest/_image/mail_image.xlsx and b/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/02_RequestUnitTest/_image/mail_image.xlsx differ diff --git a/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/02_RequestUnitTest/_image/mail_overview.jpg b/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/02_RequestUnitTest/_image/mail_overview.jpg index e0836c082..84f566432 100644 Binary files a/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/02_RequestUnitTest/_image/mail_overview.jpg and b/en/development_tools/testing_framework/guide/development_guide/05_UnitTestGuide/02_RequestUnitTest/_image/mail_overview.jpg differ diff --git a/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/01_Abstract.rst b/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/01_Abstract.rst index 7a8fb0525..8e64cdab2 100644 --- a/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/01_Abstract.rst +++ b/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/01_Abstract.rst @@ -679,7 +679,6 @@ Prerequisite In order to use JUnit 5, the following conditions must be met. -* Java 8 or higher * maven-surefire-plugin must be 2.22.0 or higher Add dependencies diff --git a/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/02_RequestUnitTest.rst b/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/02_RequestUnitTest.rst index 7871e8434..59d9ef866 100644 --- a/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/02_RequestUnitTest.rst +++ b/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/02_RequestUnitTest.rst @@ -514,26 +514,6 @@ Also, you can set the default VM arguments with the following method without cha .. image:: ./_images/edit_jre.png - -Specifying an alternate JRE ----------------------------- - -If you are developing with JavaSE5 JDK, then using JavaSE6 JRE only at the time of test execution will improve -the execution speed, especially the start-up speed. - - -How to configure with Eclipse is as shown below. - -* Select "Run(実行)" > "Run Configuration(実行構成)" from the menu bar. - -* On the "Execution Configuration(実行構成)" window that is displayed, click the "JRE" tab and select JRE of JavaSE6 in the "Alternate JRE(代替JRE)". - -.. image:: ./_images/alternate_jre.png - - -.. tip:: - To configure this setting, you need to install the JavaSE6 JDK or JRE in advance and register it as "Installed JRE(インストール済みのJRE)" in Eclipse. - Suppression of HTML resource copying ------------------------------------- diff --git a/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/JUnit5_Extension.rst b/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/JUnit5_Extension.rst index 028d1ac8e..449491bd4 100644 --- a/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/JUnit5_Extension.rst +++ b/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/JUnit5_Extension.rst @@ -26,7 +26,6 @@ Prerequisite In order to use JUnit 5, the following conditions must be met. -* Java 8 or higher * maven-surefire-plugin must be 2.22.0 or higher This page assumes that you have basic knowledge of how to introduce JUnit 5 and how to create test cases, so it does not describe these procedures. diff --git a/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/RequestUnitTest_rest.rst b/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/RequestUnitTest_rest.rst index 8516586d0..af32d823c 100644 --- a/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/RequestUnitTest_rest.rst +++ b/en/development_tools/testing_framework/guide/development_guide/06_TestFWGuide/RequestUnitTest_rest.rst @@ -63,7 +63,7 @@ Module list com.nablarch.framework - nablarch-testing-jetty6 + nablarch-testing-jetty12 test @@ -72,9 +72,6 @@ Module list ``nablarch-testing-rest`` depends on ``nablarch-testing`` (:ref:`Testing framework `) . Adding the above module to the dependencies allows you to use :ref:`Testing framework `'s API as well. -.. tip:: - If you are using Java11 replace the built-in server as described in :ref:`Change of Jetty module used in automatic test (only for web projects or RESTful web service projects) ` . - Configuration ============= diff --git a/en/development_tools/testing_framework/guide/development_guide/08_TestTools/01_HttpDumpTool/02_SetUpHttpDumpTool.rst b/en/development_tools/testing_framework/guide/development_guide/08_TestTools/01_HttpDumpTool/02_SetUpHttpDumpTool.rst index 570deff55..d36689df9 100644 --- a/en/development_tools/testing_framework/guide/development_guide/08_TestTools/01_HttpDumpTool/02_SetUpHttpDumpTool.rst +++ b/en/development_tools/testing_framework/guide/development_guide/08_TestTools/01_HttpDumpTool/02_SetUpHttpDumpTool.rst @@ -27,8 +27,7 @@ Method of provision This tool is provided in the following jar. * nablarch-testing-XXX.jar -* nablarch-testing-jetty6-XXX.jar (for Java 8 and earlier versions) -* nablarch-testing-jetty9-XXX.jar (for Java 11 and later versions) +* nablarch-testing-jetty12-XXX.jar Therefore, make sure that the following descriptions are included in the dependencies element of pom.xml. @@ -41,16 +40,9 @@ Therefore, make sure that the following descriptions are included in the depende nablarch-testing test - com.nablarch.framework - nablarch-testing-jetty6 - test - - - - com.nablarch.framework - nablarch-testing-jetty9 + nablarch-testing-jetty12 test diff --git a/en/development_tools/testing_framework/index.rst b/en/development_tools/testing_framework/index.rst index 85fc4b5ef..cb203b8de 100644 --- a/en/development_tools/testing_framework/index.rst +++ b/en/development_tools/testing_framework/index.rst @@ -19,7 +19,7 @@ For architects who will be adopting testing frameworks, refer to :ref:`testFWGui The testing framework does not support the following platforms and libraries: For this reason, testing framework such as `JUnit (external site) `_ should be used for testing applications that use these platforms and libraries. - * :ref:`JSR352-compliant batch application ` + * :ref:`Jakarta Batch-compliant batch application ` .. important:: diff --git a/en/development_tools/toolbox/JspStaticAnalysis/01_JspStaticAnalysis.rst b/en/development_tools/toolbox/JspStaticAnalysis/01_JspStaticAnalysis.rst index fad0aacc7..4e4f7b499 100644 --- a/en/development_tools/toolbox/JspStaticAnalysis/01_JspStaticAnalysis.rst +++ b/en/development_tools/toolbox/JspStaticAnalysis/01_JspStaticAnalysis.rst @@ -1,8 +1,8 @@ .. _jsp_static_analysis_tool: -============================= -JSP Static Analysis Tool -============================= +============================================ +Jakarta Server Pages Static Analysis Tool +============================================ .. contents:: Table of Contents :depth: 2 @@ -96,8 +96,7 @@ How to specify the files to be checked The file (directory) of the check target is specified as the start argument to this tool. If a directory is specified, the target file (default is a file with the extension jsp, but the extension can be added by setting) is checked recursively. -In the development project of UI development infrastructure, -there is a case that files to be checked (files deployed to the production environment) and files not to be checked (files for testing, etc. that are not deployed to the production environment) are mixed in the directory to be checked. +There is a case that files to be checked (files deployed to the production environment) and files not to be checked (files for testing, etc. that are not deployed to the production environment) are mixed in the directory to be checked. In such a case, the check for unnecessary files can be disabled by using the exclusion file setting. Refer to :ref:`01_customJspAnalysisProp` for how to set the files (directories) to be checked and the files (directories) not to be checked. @@ -148,8 +147,8 @@ Confirmation of the existence of a configuration file Confirm that the following files required to execute this tool exist in the static-analysis/jspanalysis directory of the tools project. -* :download:`config.txt<../tools/JspStaticAnalysis/config.txt>` … JSP static analysis tool configuration file -* :download:`transform-to-html.xsl<../tools/JspStaticAnalysis/transform-to-html.xsl>` … Definition file for converting JSP static analysis result XML to HTML +* :download:`config.txt<../tools/JspStaticAnalysis/config.txt>` … Jakarta Server Pages static analysis tool configuration file +* :download:`transform-to-html.xsl<../tools/JspStaticAnalysis/transform-to-html.xsl>` … Definition file for converting analysis result XML to HTML Refer to :doc:`02_JspStaticAnalysisInstall` for more information about these files. @@ -183,7 +182,7 @@ Confirm that the following definition exists in nablarch-tools.xml of tools proj - @@ -196,16 +195,16 @@ Confirm that the following definition exists in nablarch-tools.xml of tools proj -Check the pom.xml of the target project that you want to check with the JSP static analysis tool -====================================================================================================== +Check the pom.xml of the target project that you want to check with the Jakarta Server Pages static analysis tool +==================================================================================================================== -Confirm that the following description exists in pom.xml of the target project that you want to check with JSP static analysis tool. +Confirm that the following description exists in pom.xml of the target project that you want to check with Jakarta Server Pages static analysis tool. .. code-block:: xml - @@ -228,13 +227,13 @@ Confirm that the following description exists in pom.xml of the target project t .. tip:: - The configuration values of the JSP static analysis tool are described in pom.xml of nablarch-archetype-parent. + The configuration values of the Jakarta Server Pages static analysis tool are described in pom.xml of nablarch-archetype-parent. .. code-block:: xml - + ${project.basedir}/src/main/webapp ${project.basedir}/target/jspanalysis-result.xml ${nablarch.tools.dir}/static-analysis/jspanalysis/config.txt @@ -251,8 +250,8 @@ Confirm that the following description exists in pom.xml of the target project t .. _01_customJspAnalysis: -How to write the JSP static analysis tool configuration file -====================================================================== +How to write the Jakarta Server Pages static analysis tool configuration file +============================================================================== Modify the configuration file to reflect the project's conventions. diff --git a/en/development_tools/toolbox/JspStaticAnalysis/02_JspStaticAnalysisInstall.rst b/en/development_tools/toolbox/JspStaticAnalysis/02_JspStaticAnalysisInstall.rst index fe1be2b02..16dafc761 100644 --- a/en/development_tools/toolbox/JspStaticAnalysis/02_JspStaticAnalysisInstall.rst +++ b/en/development_tools/toolbox/JspStaticAnalysis/02_JspStaticAnalysisInstall.rst @@ -1,6 +1,6 @@ -==================================================== -JSP Static Analysis Tool Configuration Change Guide -==================================================== +====================================================================== +Jakarta Server Pages Static Analysis Tool Configuration Change Guide +====================================================================== .. contents:: Table of Contents :depth: 2 @@ -35,11 +35,11 @@ The structure of the configuration file is shown in the table below. - Check the Ant task definition file [1]_ . Usually it need not be edited * - tools/static-analysis/jspanalysis/config.txt - - JSP static analysis tool configuration file. Refer to :ref:`01_customJspAnalysis` for the description method + - Jakarta Server Pages static analysis tool configuration file. Refer to :ref:`01_customJspAnalysis` for the description method * - tools/static-analysis/jspanalysis/transform-to-html.xsl - - Definition file for converting JSP static analysis result XML to HTML. |br| + - Definition file for converting analysis result XML to HTML. |br| Refer to "JSP Analysis (XML Report Output)" in :ref:`01_outputJspAnalysis` for the description method. * - Pom.xml of nablarch-archetype-parent @@ -54,7 +54,7 @@ The structure of the configuration file is shown in the table below. Rewriting pom.xml ----------------------------------------------- -When modifying properties for the JSP static analysis tool according to the execution environment, if there are modifications to jspanalysis.excludePatterns, modify the pom.xml of the project that executes the tool. When other items are to be modified, modify pom.xml of nablarch-archetype-parent. +When modifying properties for the Jakarta Server Pages static analysis tool according to the execution environment, if there are modifications to jspanalysis.excludePatterns, modify the pom.xml of the project that executes the tool. When other items are to be modified, modify pom.xml of nablarch-archetype-parent. ================================ ============================================================================================================ Configuration property Description @@ -82,7 +82,7 @@ jspanalysis.htmloutput Configure the output path of HTML report file ./build/reports/jsp/report.html -jspanalysis.checkconfig Configure the file path of the JSP static analysis tool configuration file. +jspanalysis.checkconfig Configure the file path of the Jakarta Server Pages static analysis tool configuration file. Example:: diff --git a/en/development_tools/toolbox/JspStaticAnalysis/index.rst b/en/development_tools/toolbox/JspStaticAnalysis/index.rst index 031a4a353..8c4956890 100644 --- a/en/development_tools/toolbox/JspStaticAnalysis/index.rst +++ b/en/development_tools/toolbox/JspStaticAnalysis/index.rst @@ -1,6 +1,6 @@ -=========================== -JSP Static Analysis Tool -=========================== +========================================= +Jakarta Server Pages Static Analysis Tool +========================================= .. toctree:: :maxdepth: 1 @@ -8,3 +8,11 @@ JSP Static Analysis Tool 01_JspStaticAnalysis 02_JspStaticAnalysisInstall + +.. tip:: + This tool was called "JSP Static Analysis Tool" until Nablarch5. + However, as Java EE was transferred to the Eclipse Foundation and the specification name changed, the name was changed to "Jakarta Server Pages Static Analysis Tool". + + Only the name has changed, there is no functional difference. + + For other features renamed in Nablarch 6, see :ref:`renamed_features_in_nablarch_6`. diff --git a/en/development_tools/toolbox/JspVerifier/JspVerifier.rst b/en/development_tools/toolbox/JspVerifier/JspVerifier.rst deleted file mode 100644 index 9ce79da70..000000000 --- a/en/development_tools/toolbox/JspVerifier/JspVerifier.rst +++ /dev/null @@ -1,266 +0,0 @@ -========================================= -Job Screen JSP Validation Tool -========================================= - -.. contents:: - :local: - :depth: 2 - :backlinks: none - - ------------------------------------------ -Summary ------------------------------------------ - -This tool performs the following verifications on JSP files. - -Also, it has the capability to change the verification contents in the settings file, and the verification content itself can be added. - -**Implemented** - - * It can verify to ensure that only the tags that are permitted to be used, are used in the JSP of the business screen. - * It can verify that the required structure is satisfied in the JSP. - * It can verify that the prohibited structure is not being used in the JSP. - * It can verify that the attributes specified for each tag are indeed the attributes defined for each tag. - -**Not implemented** - - * It can verify that attribute value of each tag corresponds to the type of attribute. - - ------------------------------------------ -Initial Environment Construction ------------------------------------------ - - -Node.js installation -========================================= - -Since this tool depends on `Node.js `_ , the installer from the below site based on the environment being used is to be downloaded and installed. - - http://nodejs.org/ - - -Check environment variables -========================================= - -When performing the below procedure under a proxy environment, the below values of the environment variables are to be checked. - -=========================================== ====================================================== -Explanatory variable name Value -=========================================== ====================================================== -HTTP_PROXY URL of the proxy server for HTTP -HTTPS_PROXY URL of the proxy server for HTTPS -=========================================== ====================================================== - - -Install dependent packages -========================================= - -This tool is dependent on multiple open source libraries. (To know more about the libraries that the tool depends on, refer to `package.json`.) - -To install the libraries, execute the below command in the root directory (directory where `package.json` is saved) of this tool. - -.. list-table:: - :header-rows: 1 - :class: white-space-normal - :widths: 10,5,18 - - - * - Execution directory - - Command - - Details to be checked - - * - Root directory of this tool (directory where `package.json` is saved.) - - `npm install` - - * The command must have been completed successfully. - * The `node_modules`\ directory must be created in the root directory. - - -.. important:: - - To install the dependent package according to the above procedure, the environment needs to be connected to the Internet. - - Also, if a proxy environment is used, it is necessary for the proxy server address to be configured to the below environment variables. - - * http_proxy :example: http_proxy=http://proxy.example.com:8080 - * https_proxy :example: https_proxy=http://proxy.example.com:8080 - - Also, if installed in an environment that is not connected to the Internet, - it can be used by initially performing the above procedures in an environment connected to the Internet, - and placing the `node_modules` directory created in the root directory, - in the root directory of this tool that has been extracted in the target environment. - - -Confirm if it can be used normally. -========================================= - -Ensure that all tests are successful by executing the below commands in the root directory of this tool. - -.. list-table:: - :header-rows: 1 - :class: white-space-normal - :widths: 14,5,13 - - - * - Execution directory - - Command - - Details to be checked - - * - Root directory of this tool (directory where `package.json` is saved.) - - `npm test` - - * Success of all tests. - -Modification of environment dependency setting value. -================================================================= - -Modify the below setting value of verification_config.json at the directory where the actual tag file is saved. - -.. code-block:: json - - { - "TagAttributeVerifier" : { - "directory" : "C:\\nablarch\\workspace\\tutorial\\main\\web\\WEB-INF\\tags\\widget", - "encoding" : "utf-8" - } - } - - - ------------------------------------------ -How to Use the tool ------------------------------------------ - - -Execute with a bat file -========================================= - -Drag and drop the file to `jsp_verifier.bat` that is in the root directory of this tool. - -If a command line window is displayed and there are 0 verification errors, - -Verification Succeeded. - -Is displayed, and if there are one or more verification error, - -Verification Failed!! |br| -12 violations are found. |br| -Detected violations are dumped to violations-1390366626297.log. - -The file name where the error content is output is displayed like this. - - - -Execution from command line. -========================================= - -The below commands are executed in the root directory of this tool. - -.. code-block:: sh - - node bin/jsp_verifier - -The output contents of the standard output are as above. - - ------------------------------------------ -Configuration method ------------------------------------------ - -`verification_config.json` of the root directory is the configuration file of this tool. -Verification is performed by detailing the verification contents to be executed in this file and settings of each verification content. - -.. important:: - - In the below example configuration file, for the purpose of explanation, though comments are written in JavaScript format, comments cannot be written in the actual JSON file. - -.. code-block:: javascript - - { - // Verification contents to be implemented are described in verifiers. - "verifiers": { - // Verification of tags that can be used - "TagUsageVerifier": { - } - // Regular expression verification - "RegexpBasedVerifier": { - } - // DOM tree verification - "SelectorBasedVerifier": { - } - // Parent tag verification - "WrappingTagVerifier": { - } - // Tag attribute verification - "TagAttributeVerifier": { - } - // Verification not defined here will not be performed - } - } - -Default setting contents -========================================= - -Verification of tags that can be used ------------------------------------------ - -Only the below tags that have usage permission are to be used. - -* n:form -* n:set -* n:write -* n:ConfirmationPage -* n:forConfirmationPage -* n:forInputPage -* n:param -* n:hidden -* t:page_template -* t:errorpage_template -* box:.* -* button:.* -* field:.* -* link:.* -* tab:.* -* table:.* -* column:.* -* spec:.* -* c:if -* jsp:attribute -* %-- -* %\@page -* %\@taglib - -Regular expression verification ------------------------------------------ - -Strings matching the below regular expression are not recognized (uppercase/lowercase not sensitive). - -* /> (Self terminating element. If a self-terminating element is used, as the description content cannot be drawn after that element, it is prohibited) - -DOM tree validation ------------------------------------------ - -The below prohibited structures are not to be used. - -* table:not([id]) (As IDs is required when displaying multiple tables, ID is forced on the table.) -* table:not([listSearchInfoName]) (listSearchInfoName is forced as the number of results cannot be displayed if the table does not have listSearchInfoName.) - -Parent tag verification ------------------------------------------ - -The below required structure is to be satisfied. - -* The table widget must be enclosed with n:form. -* The button widget needs to be enclosed with n:form. -* The widget displayed in the screen item definition in the design view must be enclosed by spec:layout. - -Tag attribute verification ------------------------------------------ - -The attribute of the tag (the one with the tag file stored under C:\\nablarch\\workspace\\tutorial\\main\\web\\WEB-INF\\tags\\widget) being used in JSP should be the actual attribute that defines the tag. - - - -.. |br| raw:: html - -
\ No newline at end of file diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/api.js b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/api.js deleted file mode 100644 index 24c94f782..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/api.js +++ /dev/null @@ -1,15 +0,0 @@ -YUI.add("yuidoc-meta", function(Y) { - Y.YUIDoc = { meta: { - "classes": [ - "JspVerifier", - "RegexpBasedVerifier", - "SelectorBasedVerifier", - "TagAttributeVerifier", - "TagUsageVerifier", - "VerificationError", - "WrappingTagVerifier" - ], - "modules": [], - "allModules": [] -} }; -}); \ No newline at end of file diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/css/external-small.png b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/css/external-small.png deleted file mode 100644 index 759a1cdcb..000000000 Binary files a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/css/external-small.png and /dev/null differ diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/css/logo.png b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/css/logo.png deleted file mode 100644 index 609b336c7..000000000 Binary files a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/css/logo.png and /dev/null differ diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/css/main.css b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/css/main.css deleted file mode 100644 index cdfe209e8..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/css/main.css +++ /dev/null @@ -1,783 +0,0 @@ -/* -Font sizes for all selectors other than the body are given in percentages, -with 100% equal to 13px. To calculate a font size percentage, multiply the -desired size in pixels by 7.6923076923. - -Here's a quick lookup table: - -10px - 76.923% -11px - 84.615% -12px - 92.308% -13px - 100% -14px - 107.692% -15px - 115.385% -16px - 123.077% -17px - 130.769% -18px - 138.462% -19px - 146.154% -20px - 153.846% -*/ - -html { - background: #fff; - color: #333; - overflow-y: scroll; -} - -body { - /*font: 13px/1.4 'Lucida Grande', 'Lucida Sans Unicode', 'DejaVu Sans', 'Bitstream Vera Sans', 'Helvetica', 'Arial', sans-serif;*/ - font: 13px/1.4 'Helvetica', 'Arial', sans-serif; - margin: 0; - padding: 0; -} - -/* -- Links ----------------------------------------------------------------- */ -a { - color: #356de4; - text-decoration: none; -} - -.hidden { - display: none; -} - -a:hover { text-decoration: underline; } - -/* "Jump to Table of Contents" link is shown to assistive tools, but hidden from - sight until it's focused. */ -.jump { - position: absolute; - padding: 3px 6px; - left: -99999px; - top: 0; -} - -.jump:focus { left: 40%; } - -/* -- Paragraphs ------------------------------------------------------------ */ -p { margin: 1.3em 0; } -dd p, td p { margin-bottom: 0; } -dd p:first-child, td p:first-child { margin-top: 0; } - -/* -- Headings -------------------------------------------------------------- */ -h1, h2, h3, h4, h5, h6 { - color: #D98527;/*was #f80*/ - font-family: 'Trebuchet MS', sans-serif; - font-weight: bold; - line-height: 1.1; - margin: 1.1em 0 0.5em; -} - -h1 { - font-size: 184.6%; - color: #30418C; - margin: 0.75em 0 0.5em; -} - -h2 { - font-size: 153.846%; - color: #E48A2B; -} - -h3 { font-size: 138.462%; } - -h4 { - border-bottom: 1px solid #DBDFEA; - color: #E48A2B; - font-size: 115.385%; - font-weight: normal; - padding-bottom: 2px; -} - -h5, h6 { font-size: 107.692%; } - -/* -- Code and examples ----------------------------------------------------- */ -code, kbd, pre, samp { - font-family: Menlo, Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; - font-size: 92.308%; - line-height: 1.35; -} - -p code, p kbd, p samp, li code { - background: #FCFBFA; - border: 1px solid #EFEEED; - padding: 0 3px; -} - -a code, a kbd, a samp, -pre code, pre kbd, pre samp, -table code, table kbd, table samp, -.intro code, .intro kbd, .intro samp, -.toc code, .toc kbd, .toc samp { - background: none; - border: none; - padding: 0; -} - -pre.code, pre.terminal, pre.cmd { - overflow-x: auto; - *overflow-x: scroll; - padding: 0.3em 0.6em; -} - -pre.code { - background: #FCFBFA; - border: 1px solid #EFEEED; - border-left-width: 5px; -} - -pre.terminal, pre.cmd { - background: #F0EFFC; - border: 1px solid #D0CBFB; - border-left: 5px solid #D0CBFB; -} - -/* Don't reduce the font size of // elements inside
-   blocks. */
-pre code, pre kbd, pre samp { font-size: 100%; }
-
-/* Used to denote text that shouldn't be selectable, such as line numbers or
-   shell prompts. Guess which browser this doesn't work in. */
-.noselect {
-    -moz-user-select: -moz-none;
-    -khtml-user-select: none;
-    -webkit-user-select: none;
-    -o-user-select: none;
-    user-select: none;
-}
-
-/* -- Lists ----------------------------------------------------------------- */
-dd { margin: 0.2em 0 0.7em 1em; }
-dl { margin: 1em 0; }
-dt { font-weight: bold; }
-
-/* -- Tables ---------------------------------------------------------------- */
-caption, th { text-align: left; }
-
-table {
-    border-collapse: collapse;
-    width: 100%;
-}
-
-td, th {
-    border: 1px solid #fff;
-    padding: 5px 12px;
-    vertical-align: top;
-}
-
-td { background: #E6E9F5; }
-td dl { margin: 0; }
-td dl dl { margin: 1em 0; }
-td pre:first-child { margin-top: 0; }
-
-th {
-    background: #D2D7E6;/*#97A0BF*/
-    border-bottom: none;
-    border-top: none;
-    color: #000;/*#FFF1D5*/
-    font-family: 'Trebuchet MS', sans-serif;
-    font-weight: bold;
-    line-height: 1.3;
-    white-space: nowrap;
-}
-
-
-/* -- Layout and Content ---------------------------------------------------- */
-#doc {
-    margin: auto;
-    min-width: 1024px;
-}
-
-.content { padding: 0 20px 0 25px; }
-
-.sidebar {
-    padding: 0 15px 0 10px;
-}
-#bd {
-    padding: 7px 0 130px;
-    position: relative;
-    width: 99%;
-}
-
-/* -- Table of Contents ----------------------------------------------------- */
-
-/* The #toc id refers to the single global table of contents, while the .toc
-   class refers to generic TOC lists that could be used throughout the page. */
-
-.toc code, .toc kbd, .toc samp { font-size: 100%; }
-.toc li { font-weight: bold; }
-.toc li li { font-weight: normal; }
-
-/* -- Intro and Example Boxes ----------------------------------------------- */
-/*
-.intro, .example { margin-bottom: 2em; }
-.example {
-    -moz-border-radius: 4px;
-    -webkit-border-radius: 4px;
-    border-radius: 4px;
-    -moz-box-shadow: 0 0 5px #bfbfbf;
-    -webkit-box-shadow: 0 0 5px #bfbfbf;
-    box-shadow: 0 0 5px #bfbfbf;
-    padding: 1em;
-}
-.intro {
-    background: none repeat scroll 0 0 #F0F1F8; border: 1px solid #D4D8EB; padding: 0 1em;
-}
-*/
-
-/* -- Other Styles ---------------------------------------------------------- */
-
-/* These are probably YUI-specific, and should be moved out of Selleck's default
-   theme. */
-
-.button {
-    border: 1px solid #dadada;
-    -moz-border-radius: 3px;
-    -webkit-border-radius: 3px;
-    border-radius: 3px;
-    color: #444;
-    display: inline-block;
-    font-family: Helvetica, Arial, sans-serif;
-    font-size: 92.308%;
-    font-weight: bold;
-    padding: 4px 13px 3px;
-    -moz-text-shadow: 1px 1px 0 #fff;
-    -webkit-text-shadow: 1px 1px 0 #fff;
-    text-shadow: 1px 1px 0 #fff;
-    white-space: nowrap;
-
-    background: #EFEFEF; /* old browsers */
-    background: -moz-linear-gradient(top, #f5f5f5 0%, #efefef 50%, #e5e5e5 51%, #dfdfdf 100%); /* firefox */
-    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f5f5f5), color-stop(50%,#efefef), color-stop(51%,#e5e5e5), color-stop(100%,#dfdfdf)); /* webkit */
-    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#dfdfdf',GradientType=0 ); /* ie */
-}
-
-.button:hover {
-    border-color: #466899;
-    color: #fff;
-    text-decoration: none;
-    -moz-text-shadow: 1px 1px 0 #222;
-    -webkit-text-shadow: 1px 1px 0 #222;
-    text-shadow: 1px 1px 0 #222;
-
-    background: #6396D8; /* old browsers */
-    background: -moz-linear-gradient(top, #6396D8 0%, #5A83BC 50%, #547AB7 51%, #466899 100%); /* firefox */
-    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#6396D8), color-stop(50%,#5A83BC), color-stop(51%,#547AB7), color-stop(100%,#466899)); /* webkit */
-    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6396D8', endColorstr='#466899',GradientType=0 ); /* ie */
-}
-
-.newwindow { text-align: center; }
-
-.header .version em {
-    display: block;
-    text-align: right;
-}
-
-
-#classdocs .item {
-    border-bottom: 1px solid #466899;
-    margin: 1em 0;
-    padding: 1.5em;
-}
-
-#classdocs .item .params p,
-    #classdocs .item .returns p,{
-    display: inline;
-}
-
-#classdocs .item em code, #classdocs .item em.comment {
-    color: green;
-}
-
-#classdocs .item em.comment a {
-    color: green;
-    text-decoration: underline;
-}
-
-#classdocs .foundat {
-    font-size: 11px;
-    font-style: normal;
-}
-
-.attrs .emits {
-    margin-left: 2em;
-    padding: .5em;
-    border-left: 1px dashed #ccc;
-}
-
-abbr {
-    border-bottom: 1px dashed #ccc;
-    font-size: 80%;
-    cursor: help;
-}
-
-.prettyprint li.L0, 
-.prettyprint li.L1, 
-.prettyprint li.L2, 
-.prettyprint li.L3, 
-.prettyprint li.L5, 
-.prettyprint li.L6, 
-.prettyprint li.L7, 
-.prettyprint li.L8 {
-    list-style: decimal;
-}
-
-ul li p {
-    margin-top: 0;
-}
-
-.method .name {
-    font-size: 110%;
-}
-
-.apidocs .methods .extends .method,
-.apidocs .properties .extends .property,
-.apidocs .attrs .extends .attr,
-.apidocs .events .extends .event {
-    font-weight: bold;
-}
-
-.apidocs .methods .extends .inherited,
-.apidocs .properties .extends .inherited,
-.apidocs .attrs .extends .inherited,
-.apidocs .events .extends .inherited {
-    font-weight: normal;
-}
-
-#hd {
-    background: whiteSmoke;
-    background: -moz-linear-gradient(top,#DCDBD9 0,#F6F5F3 100%);
-    background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,#DCDBD9),color-stop(100%,#F6F5F3));
-    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#dcdbd9',endColorstr='#F6F5F3',GradientType=0);
-    border-bottom: 1px solid #DFDFDF;
-    padding: 0 15px 1px 20px;
-    margin-bottom: 15px;
-}
-
-#hd img {
-    margin-right: 10px;
-    vertical-align: middle;
-}
-
-
-/* -- API Docs CSS ---------------------------------------------------------- */
-
-/*
-This file is organized so that more generic styles are nearer the top, and more
-specific styles are nearer the bottom of the file. This allows us to take full
-advantage of the cascade to avoid redundant style rules. Please respect this
-convention when making changes.
-*/
-
-/* -- Generic TabView styles ------------------------------------------------ */
-
-/*
-These styles apply to all API doc tabviews. To change styles only for a
-specific tabview, see the other sections below.
-*/
-
-.yui3-js-enabled .apidocs .tabview {
-    visibility: hidden; /* Hide until the TabView finishes rendering. */
-    _visibility: visible;
-}
-
-.apidocs .tabview.yui3-tabview-content { visibility: visible; }
-.apidocs .tabview .yui3-tabview-panel { background: #fff; }
-
-/* -- Generic Content Styles ------------------------------------------------ */
-
-/* Headings */
-h2, h3, h4, h5, h6 {
-    border: none;
-    color: #30418C;
-    font-weight: bold;
-    text-decoration: none;
-}
-
-.link-docs {
-    float: right;
-    font-size: 15px;
-    margin: 4px 4px 6px;
-    padding: 6px 30px 5px;
-}
-
-.apidocs { zoom: 1; }
-
-/* Generic box styles. */
-.apidocs .box {
-    border: 1px solid;
-    border-radius: 3px;
-    margin: 1em 0;
-    padding: 0 1em;
-}
-
-/* A flag is a compact, capsule-like indicator of some kind. It's used to
-   indicate private and protected items, item return types, etc. in an
-   attractive and unobtrusive way. */
-.apidocs .flag {
-    background: #bababa;
-    border-radius: 3px;
-    color: #fff;
-    font-size: 11px;
-    margin: 0 0.5em;
-    padding: 2px 4px 1px;
-}
-
-/* Class/module metadata such as "Uses", "Extends", "Defined in", etc. */
-.apidocs .meta {
-    background: #f9f9f9;
-    border-color: #efefef;
-    color: #555;
-    font-size: 11px;
-    padding: 3px 6px;
-}
-
-.apidocs .meta p { margin: 0; }
-
-/* Deprecation warning. */
-.apidocs .box.deprecated,
-.apidocs .flag.deprecated {
-    background: #fdac9f;
-    border: 1px solid #fd7775;
-}
-
-.apidocs .box.deprecated p { margin: 0.5em 0; }
-.apidocs .flag.deprecated { color: #333; }
-
-/* Module/Class intro description. */
-.apidocs .intro {
-    background: #f0f1f8;
-    border-color: #d4d8eb;
-}
-
-/* Loading spinners. */
-#bd.loading .apidocs,
-#api-list.loading .yui3-tabview-panel {
-    background: #fff url(../img/spinner.gif) no-repeat center 70px;
-    min-height: 150px;
-}
-
-#bd.loading .apidocs .content,
-#api-list.loading .yui3-tabview-panel .apis {
-    display: none;
-}
-
-.apidocs .no-visible-items { color: #666; }
-
-/* Generic inline list. */
-.apidocs ul.inline {
-    display: inline;
-    list-style: none;
-    margin: 0;
-    padding: 0;
-}
-
-.apidocs ul.inline li { display: inline; }
-
-/* Comma-separated list. */
-.apidocs ul.commas li:after { content: ','; }
-.apidocs ul.commas li:last-child:after { content: ''; }
-
-/* Keyboard shortcuts. */
-kbd .cmd { font-family: Monaco, Helvetica; }
-
-/* -- Generic Access Level styles ------------------------------------------- */
-.apidocs .item.protected,
-.apidocs .item.private,
-.apidocs .index-item.protected,
-.apidocs .index-item.deprecated,
-.apidocs .index-item.private {
-    display: none;
-}
-
-.show-deprecated .item.deprecated,
-.show-deprecated .index-item.deprecated,
-.show-protected .item.protected,
-.show-protected .index-item.protected,
-.show-private .item.private,
-.show-private .index-item.private {
-    display: block;
-}
-
-.hide-inherited .item.inherited,
-.hide-inherited .index-item.inherited {
-    display: none;
-}
-
-/* -- Generic Item Index styles --------------------------------------------- */
-.apidocs .index { margin: 1.5em 0 3em; }
-
-.apidocs .index h3 {
-    border-bottom: 1px solid #efefef;
-    color: #333;
-    font-size: 13px;
-    margin: 2em 0 0.6em;
-    padding-bottom: 2px;
-}
-
-.apidocs .index .no-visible-items { margin-top: 2em; }
-
-.apidocs .index-list {
-    border-color: #efefef;
-    font-size: 12px;
-    list-style: none;
-    margin: 0;
-    padding: 0;
-    -moz-column-count: 4;
-    -moz-column-gap: 10px;
-    -moz-column-width: 170px;
-    -ms-column-count: 4;
-    -ms-column-gap: 10px;
-    -ms-column-width: 170px;
-    -o-column-count: 4;
-    -o-column-gap: 10px;
-    -o-column-width: 170px;
-    -webkit-column-count: 4;
-    -webkit-column-gap: 10px;
-    -webkit-column-width: 170px;
-    column-count: 4;
-    column-gap: 10px;
-    column-width: 170px;
-}
-
-.apidocs .no-columns .index-list {
-    -moz-column-count: 1;
-    -ms-column-count: 1;
-    -o-column-count: 1;
-    -webkit-column-count: 1;
-    column-count: 1;
-}
-
-.apidocs .index-item { white-space: nowrap; }
-
-.apidocs .index-item .flag {
-    background: none;
-    border: none;
-    color: #afafaf;
-    display: inline;
-    margin: 0 0 0 0.2em;
-    padding: 0;
-}
-
-/* -- Generic API item styles ----------------------------------------------- */
-.apidocs .args {
-    display: inline;
-    margin: 0 0.5em;
-}
-
-.apidocs .flag.chainable { background: #46ca3b; }
-.apidocs .flag.protected { background: #9b86fc; }
-.apidocs .flag.private { background: #fd6b1b; }
-.apidocs .flag.async { background: #356de4; }
-.apidocs .flag.required { background: #e60923; }
-
-.apidocs .item {
-    border-bottom: 1px solid #efefef;
-    margin: 1.5em 0 2em;
-    padding-bottom: 2em;
-}
-
-.apidocs .item h4,
-.apidocs .item h5,
-.apidocs .item h6 {
-    color: #333;
-    font-family: inherit;
-    font-size: 100%;
-}
-
-.apidocs .item .description p,
-.apidocs .item pre.code {
-    margin: 1em 0 0;
-}
-
-.apidocs .item .meta {
-    background: none;
-    border: none;
-    padding: 0;
-}
-
-.apidocs .item .name {
-    display: inline;
-    font-size: 14px;
-}
-
-.apidocs .item .type,
-.apidocs .item .type a,
-.apidocs .returns-inline {
-    color: #555;
-}
-
-.apidocs .item .type,
-.apidocs .returns-inline {
-    font-size: 11px;
-    margin: 0 0 0 0;
-}
-
-.apidocs .item .type a { border-bottom: 1px dotted #afafaf; }
-.apidocs .item .type a:hover { border: none; }
-
-/* -- Item Parameter List --------------------------------------------------- */
-.apidocs .params-list {
-    list-style: square;
-    margin: 1em 0 0 2em;
-    padding: 0;
-}
-
-.apidocs .param { margin-bottom: 1em; }
-
-.apidocs .param .type,
-.apidocs .param .type a {
-    color: #666;
-}
-
-.apidocs .param .type {
-    margin: 0 0 0 0.5em;
-    *margin-left: 0.5em;
-}
-
-.apidocs .param-name { font-weight: bold; }
-
-/* -- Item "Emits" block ---------------------------------------------------- */
-.apidocs .item .emits {
-    background: #f9f9f9;
-    border-color: #eaeaea;
-}
-
-/* -- Item "Returns" block -------------------------------------------------- */
-.apidocs .item .returns .type,
-.apidocs .item .returns .type a {
-    font-size: 100%;
-    margin: 0;
-}
-
-/* -- Class Constructor block ----------------------------------------------- */
-.apidocs .constructor .item {
-    border: none;
-    padding-bottom: 0;
-}
-
-/* -- File Source View ------------------------------------------------------ */
-.apidocs .file pre.code,
-#doc .apidocs .file pre.prettyprint {
-    background: inherit;
-    border: none;
-    overflow: visible;
-    padding: 0;
-}
-
-.apidocs .L0,
-.apidocs .L1,
-.apidocs .L2,
-.apidocs .L3,
-.apidocs .L4,
-.apidocs .L5,
-.apidocs .L6,
-.apidocs .L7,
-.apidocs .L8,
-.apidocs .L9 {
-    background: inherit;
-}
-
-/* -- Submodule List -------------------------------------------------------- */
-.apidocs .module-submodule-description {
-    font-size: 12px;
-    margin: 0.3em 0 1em;
-}
-
-.apidocs .module-submodule-description p:first-child { margin-top: 0; }
-
-/* -- Sidebar TabView ------------------------------------------------------- */
-#api-tabview { margin-top: 0.6em; }
-
-#api-tabview-filter,
-#api-tabview-panel {
-    border: 1px solid #dfdfdf;
-}
-
-#api-tabview-filter {
-    border-bottom: none;
-    border-top: none;
-    padding: 0.6em 10px 0 10px;
-}
-
-#api-tabview-panel { border-top: none; }
-#api-filter { width: 97%; }
-
-/* -- Content TabView ------------------------------------------------------- */
-#classdocs .yui3-tabview-panel { border: none; }
-
-/* -- Source File Contents -------------------------------------------------- */
-.prettyprint li.L0,
-.prettyprint li.L1,
-.prettyprint li.L2,
-.prettyprint li.L3,
-.prettyprint li.L5,
-.prettyprint li.L6,
-.prettyprint li.L7,
-.prettyprint li.L8 {
-    list-style: decimal;
-}
-
-/* -- API options ----------------------------------------------------------- */
-#api-options {
-    font-size: 11px;
-    margin-top: 2.2em;
-    position: absolute;
-    right: 1.5em;
-}
-
-/*#api-options label { margin-right: 0.6em; }*/
-
-/* -- API list -------------------------------------------------------------- */
-#api-list {
-    margin-top: 1.5em;
-    *zoom: 1;
-}
-
-.apis {
-    font-size: 12px;
-    line-height: 1.4;
-    list-style: none;
-    margin: 0;
-    padding: 0.5em 0 0.5em 0.4em;
-}
-
-.apis a {
-    border: 1px solid transparent;
-    display: block;
-    margin: 0 0 0 -4px;
-    padding: 1px 4px 0;
-    text-decoration: none;
-    _border: none;
-    _display: inline;
-}
-
-.apis a:hover,
-.apis a:focus {
-    background: #E8EDFC;
-    background: -moz-linear-gradient(top, #e8edfc 0%, #becef7 100%);
-    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#E8EDFC), color-stop(100%,#BECEF7));
-    border-color: #AAC0FA;
-    border-radius: 3px;
-    color: #333;
-    outline: none;
-}
-
-.api-list-item a:hover,
-.api-list-item a:focus {
-    font-weight: bold;
-    text-shadow: 1px 1px 1px #fff;
-}
-
-.apis .message { color: #888; }
-.apis .result a { padding: 3px 5px 2px; }
-
-.apis .result .type {
-    right: 4px;
-    top: 7px;
-}
-
-.api-list-item .yui3-highlight {
-    font-weight: bold;
-}
-
diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/favicon.png b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/favicon.png
deleted file mode 100644
index 5a95ddab6..000000000
Binary files a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/favicon.png and /dev/null differ
diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/img/spinner.gif b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/img/spinner.gif
deleted file mode 100644
index 44f96ba68..000000000
Binary files a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/img/spinner.gif and /dev/null differ
diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/index.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/index.html
deleted file mode 100644
index 487fe15b2..000000000
--- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/index.html
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-    
-        Redirector
-        
-    
-    
-        Click here to redirect
-    
-
diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/api-filter.js b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/api-filter.js
deleted file mode 100644
index 37aefbab9..000000000
--- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/api-filter.js
+++ /dev/null
@@ -1,52 +0,0 @@
-YUI.add('api-filter', function (Y) {
-
-Y.APIFilter = Y.Base.create('apiFilter', Y.Base, [Y.AutoCompleteBase], {
-    // -- Initializer ----------------------------------------------------------
-    initializer: function () {
-        this._bindUIACBase();
-        this._syncUIACBase();
-    },
-    getDisplayName: function(name) {
-
-        Y.each(Y.YUIDoc.meta.allModules, function(i) {
-            if (i.name === name && i.displayName) {
-                name = i.displayName;
-            }
-        });
-
-        return name;
-    }
-
-}, {
-    // -- Attributes -----------------------------------------------------------
-    ATTRS: {
-        resultHighlighter: {
-            value: 'phraseMatch'
-        },
-
-        // May be set to "classes" or "modules".
-        queryType: {
-            value: 'classes'
-        },
-
-        source: {
-            valueFn: function() {
-                var self = this;
-                return function(q) {
-                    var data = Y.YUIDoc.meta[self.get('queryType')],
-                        out = [];
-                    Y.each(data, function(v) {
-                        if (v.toLowerCase().indexOf(q.toLowerCase()) > -1) {
-                            out.push(v);
-                        }
-                    });
-                    return out;
-                };
-            }
-        }
-    }
-});
-
-}, '3.4.0', {requires: [
-    'autocomplete-base', 'autocomplete-highlighters', 'autocomplete-sources'
-]});
diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/api-list.js b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/api-list.js
deleted file mode 100644
index 88905b52e..000000000
--- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/api-list.js
+++ /dev/null
@@ -1,251 +0,0 @@
-YUI.add('api-list', function (Y) {
-
-var Lang   = Y.Lang,
-    YArray = Y.Array,
-
-    APIList = Y.namespace('APIList'),
-
-    classesNode    = Y.one('#api-classes'),
-    inputNode      = Y.one('#api-filter'),
-    modulesNode    = Y.one('#api-modules'),
-    tabviewNode    = Y.one('#api-tabview'),
-
-    tabs = APIList.tabs = {},
-
-    filter = APIList.filter = new Y.APIFilter({
-        inputNode : inputNode,
-        maxResults: 1000,
-
-        on: {
-            results: onFilterResults
-        }
-    }),
-
-    search = APIList.search = new Y.APISearch({
-        inputNode : inputNode,
-        maxResults: 100,
-
-        on: {
-            clear  : onSearchClear,
-            results: onSearchResults
-        }
-    }),
-
-    tabview = APIList.tabview = new Y.TabView({
-        srcNode  : tabviewNode,
-        panelNode: '#api-tabview-panel',
-        render   : true,
-
-        on: {
-            selectionChange: onTabSelectionChange
-        }
-    }),
-
-    focusManager = APIList.focusManager = tabviewNode.plug(Y.Plugin.NodeFocusManager, {
-        circular   : true,
-        descendants: '#api-filter, .yui3-tab-panel-selected .api-list-item a, .yui3-tab-panel-selected .result a',
-        keys       : {next: 'down:40', previous: 'down:38'}
-    }).focusManager,
-
-    LIST_ITEM_TEMPLATE =
-        '
  • ' + - '{displayName}' + - '
  • '; - -// -- Init --------------------------------------------------------------------- - -// Duckpunch FocusManager's key event handling to prevent it from handling key -// events when a modifier is pressed. -Y.before(function (e, activeDescendant) { - if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) { - return new Y.Do.Prevent(); - } -}, focusManager, '_focusPrevious', focusManager); - -Y.before(function (e, activeDescendant) { - if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) { - return new Y.Do.Prevent(); - } -}, focusManager, '_focusNext', focusManager); - -// Create a mapping of tabs in the tabview so we can refer to them easily later. -tabview.each(function (tab, index) { - var name = tab.get('label').toLowerCase(); - - tabs[name] = { - index: index, - name : name, - tab : tab - }; -}); - -// Switch tabs on Ctrl/Cmd-Left/Right arrows. -tabviewNode.on('key', onTabSwitchKey, 'down:37,39'); - -// Focus the filter input when the `/` key is pressed. -Y.one(Y.config.doc).on('key', onSearchKey, 'down:83'); - -// Keep the Focus Manager up to date. -inputNode.on('focus', function () { - focusManager.set('activeDescendant', inputNode); -}); - -// Update all tabview links to resolved URLs. -tabview.get('panelNode').all('a').each(function (link) { - link.setAttribute('href', link.get('href')); -}); - -// -- Private Functions -------------------------------------------------------- -function getFilterResultNode() { - return filter.get('queryType') === 'classes' ? classesNode : modulesNode; -} - -// -- Event Handlers ----------------------------------------------------------- -function onFilterResults(e) { - var frag = Y.one(Y.config.doc.createDocumentFragment()), - resultNode = getFilterResultNode(), - typePlural = filter.get('queryType'), - typeSingular = typePlural === 'classes' ? 'class' : 'module'; - - if (e.results.length) { - YArray.each(e.results, function (result) { - frag.append(Lang.sub(LIST_ITEM_TEMPLATE, { - rootPath : APIList.rootPath, - displayName : filter.getDisplayName(result.highlighted), - name : result.text, - typePlural : typePlural, - typeSingular: typeSingular - })); - }); - } else { - frag.append( - '
  • ' + - 'No ' + typePlural + ' found.' + - '
  • ' - ); - } - - resultNode.empty(true); - resultNode.append(frag); - - focusManager.refresh(); -} - -function onSearchClear(e) { - - focusManager.refresh(); -} - -function onSearchKey(e) { - var target = e.target; - - if (target.test('input,select,textarea') - || target.get('isContentEditable')) { - return; - } - - e.preventDefault(); - - inputNode.focus(); - focusManager.refresh(); -} - -function onSearchResults(e) { - var frag = Y.one(Y.config.doc.createDocumentFragment()); - - if (e.results.length) { - YArray.each(e.results, function (result) { - frag.append(result.display); - }); - } else { - frag.append( - '
  • ' + - 'No results found. Maybe you\'ll have better luck with a ' + - 'different query?' + - '
  • ' - ); - } - - - focusManager.refresh(); -} - -function onTabSelectionChange(e) { - var tab = e.newVal, - name = tab.get('label').toLowerCase(); - - tabs.selected = { - index: tab.get('index'), - name : name, - tab : tab - }; - - switch (name) { - case 'classes': // fallthru - case 'modules': - filter.setAttrs({ - minQueryLength: 0, - queryType : name - }); - - search.set('minQueryLength', -1); - - // Only send a request if this isn't the initially-selected tab. - if (e.prevVal) { - filter.sendRequest(filter.get('value')); - } - break; - - case 'everything': - filter.set('minQueryLength', -1); - search.set('minQueryLength', 1); - - if (search.get('value')) { - search.sendRequest(search.get('value')); - } else { - inputNode.focus(); - } - break; - - default: - // WTF? We shouldn't be here! - filter.set('minQueryLength', -1); - search.set('minQueryLength', -1); - } - - if (focusManager) { - setTimeout(function () { - focusManager.refresh(); - }, 1); - } -} - -function onTabSwitchKey(e) { - var currentTabIndex = tabs.selected.index; - - if (!(e.ctrlKey || e.metaKey)) { - return; - } - - e.preventDefault(); - - switch (e.keyCode) { - case 37: // left arrow - if (currentTabIndex > 0) { - tabview.selectChild(currentTabIndex - 1); - inputNode.focus(); - } - break; - - case 39: // right arrow - if (currentTabIndex < (Y.Object.size(tabs) - 2)) { - tabview.selectChild(currentTabIndex + 1); - inputNode.focus(); - } - break; - } -} - -}, '3.4.0', {requires: [ - 'api-filter', 'api-search', 'event-key', 'node-focusmanager', 'tabview' -]}); diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/api-search.js b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/api-search.js deleted file mode 100644 index 175f6a617..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/api-search.js +++ /dev/null @@ -1,98 +0,0 @@ -YUI.add('api-search', function (Y) { - -var Lang = Y.Lang, - Node = Y.Node, - YArray = Y.Array; - -Y.APISearch = Y.Base.create('apiSearch', Y.Base, [Y.AutoCompleteBase], { - // -- Public Properties ---------------------------------------------------- - RESULT_TEMPLATE: - '
  • ' + - '' + - '

    {name}

    ' + - '{resultType}' + - '
    {description}
    ' + - '{class}' + - '
    ' + - '
  • ', - - // -- Initializer ---------------------------------------------------------- - initializer: function () { - this._bindUIACBase(); - this._syncUIACBase(); - }, - - // -- Protected Methods ---------------------------------------------------- - _apiResultFilter: function (query, results) { - // Filter components out of the results. - return YArray.filter(results, function (result) { - return result.raw.resultType === 'component' ? false : result; - }); - }, - - _apiResultFormatter: function (query, results) { - return YArray.map(results, function (result) { - var raw = Y.merge(result.raw), // create a copy - desc = raw.description || ''; - - // Convert description to text and truncate it if necessary. - desc = Node.create('
    ' + desc + '
    ').get('text'); - - if (desc.length > 65) { - desc = Y.Escape.html(desc.substr(0, 65)) + ' …'; - } else { - desc = Y.Escape.html(desc); - } - - raw['class'] || (raw['class'] = ''); - raw.description = desc; - - // Use the highlighted result name. - raw.name = result.highlighted; - - return Lang.sub(this.RESULT_TEMPLATE, raw); - }, this); - }, - - _apiTextLocator: function (result) { - return result.displayName || result.name; - } -}, { - // -- Attributes ----------------------------------------------------------- - ATTRS: { - resultFormatter: { - valueFn: function () { - return this._apiResultFormatter; - } - }, - - resultFilters: { - valueFn: function () { - return this._apiResultFilter; - } - }, - - resultHighlighter: { - value: 'phraseMatch' - }, - - resultListLocator: { - value: 'data.results' - }, - - resultTextLocator: { - valueFn: function () { - return this._apiTextLocator; - } - }, - - source: { - value: '/api/v1/search?q={query}&count={maxResults}' - } - } -}); - -}, '3.4.0', {requires: [ - 'autocomplete-base', 'autocomplete-highlighters', 'autocomplete-sources', - 'escape' -]}); diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/apidocs.js b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/apidocs.js deleted file mode 100644 index c64bb4632..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/apidocs.js +++ /dev/null @@ -1,370 +0,0 @@ -YUI().use( - 'yuidoc-meta', - 'api-list', 'history-hash', 'node-screen', 'node-style', 'pjax', -function (Y) { - -var win = Y.config.win, - localStorage = win.localStorage, - - bdNode = Y.one('#bd'), - - pjax, - defaultRoute, - - classTabView, - selectedTab; - -// Kill pjax functionality unless serving over HTTP. -if (!Y.getLocation().protocol.match(/^https?\:/)) { - Y.Router.html5 = false; -} - -// Create the default route with middleware which enables syntax highlighting -// on the loaded content. -defaultRoute = Y.Pjax.defaultRoute.concat(function (req, res, next) { - prettyPrint(); - bdNode.removeClass('loading'); - - next(); -}); - -pjax = new Y.Pjax({ - container : '#docs-main', - contentSelector: '#docs-main > .content', - linkSelector : '#bd a', - titleSelector : '#xhr-title', - - navigateOnHash: true, - root : '/', - routes : [ - // -- / ---------------------------------------------------------------- - { - path : '/(index.html)?', - callbacks: defaultRoute - }, - - // -- /classes/* ------------------------------------------------------- - { - path : '/classes/:class.html*', - callbacks: [defaultRoute, 'handleClasses'] - }, - - // -- /files/* --------------------------------------------------------- - { - path : '/files/*file', - callbacks: [defaultRoute, 'handleFiles'] - }, - - // -- /modules/* ------------------------------------------------------- - { - path : '/modules/:module.html*', - callbacks: defaultRoute - } - ] -}); - -// -- Utility Functions -------------------------------------------------------- - -pjax.checkVisibility = function (tab) { - tab || (tab = selectedTab); - - if (!tab) { return; } - - var panelNode = tab.get('panelNode'), - visibleItems; - - // If no items are visible in the tab panel due to the current visibility - // settings, display a message to that effect. - visibleItems = panelNode.all('.item,.index-item').some(function (itemNode) { - if (itemNode.getComputedStyle('display') !== 'none') { - return true; - } - }); - - panelNode.all('.no-visible-items').remove(); - - if (!visibleItems) { - if (Y.one('#index .index-item')) { - panelNode.append( - '
    ' + - '

    ' + - 'Some items are not shown due to the current visibility ' + - 'settings. Use the checkboxes at the upper right of this ' + - 'page to change the visibility settings.' + - '

    ' + - '
    ' - ); - } else { - panelNode.append( - '
    ' + - '

    ' + - 'This class doesn\'t provide any methods, properties, ' + - 'attributes, or events.' + - '

    ' + - '
    ' - ); - } - } - - // Hide index sections without any visible items. - Y.all('.index-section').each(function (section) { - var items = 0, - visibleItems = 0; - - section.all('.index-item').each(function (itemNode) { - items += 1; - - if (itemNode.getComputedStyle('display') !== 'none') { - visibleItems += 1; - } - }); - - section.toggleClass('hidden', !visibleItems); - section.toggleClass('no-columns', visibleItems < 4); - }); -}; - -pjax.initClassTabView = function () { - if (!Y.all('#classdocs .api-class-tab').size()) { - return; - } - - if (classTabView) { - classTabView.destroy(); - selectedTab = null; - } - - classTabView = new Y.TabView({ - srcNode: '#classdocs', - - on: { - selectionChange: pjax.onTabSelectionChange - } - }); - - pjax.updateTabState(); - classTabView.render(); -}; - -pjax.initLineNumbers = function () { - var hash = win.location.hash.substring(1), - container = pjax.get('container'), - hasLines, node; - - // Add ids for each line number in the file source view. - container.all('.linenums>li').each(function (lineNode, index) { - lineNode.set('id', 'l' + (index + 1)); - lineNode.addClass('file-line'); - hasLines = true; - }); - - // Scroll to the desired line. - if (hasLines && /^l\d+$/.test(hash)) { - if ((node = container.getById(hash))) { - win.scroll(0, node.getY()); - } - } -}; - -pjax.initRoot = function () { - var terminators = /^(?:classes|files|modules)$/, - parts = pjax._getPathRoot().split('/'), - root = [], - i, len, part; - - for (i = 0, len = parts.length; i < len; i += 1) { - part = parts[i]; - - if (part.match(terminators)) { - // Makes sure the path will end with a "/". - root.push(''); - break; - } - - root.push(part); - } - - pjax.set('root', root.join('/')); -}; - -pjax.updateTabState = function (src) { - var hash = win.location.hash.substring(1), - defaultTab, node, tab, tabPanel; - - function scrollToNode() { - if (node.hasClass('protected')) { - Y.one('#api-show-protected').set('checked', true); - pjax.updateVisibility(); - } - - if (node.hasClass('private')) { - Y.one('#api-show-private').set('checked', true); - pjax.updateVisibility(); - } - - setTimeout(function () { - // For some reason, unless we re-get the node instance here, - // getY() always returns 0. - var node = Y.one('#classdocs').getById(hash); - win.scrollTo(0, node.getY() - 70); - }, 1); - } - - if (!classTabView) { - return; - } - - if (src === 'hashchange' && !hash) { - defaultTab = 'index'; - } else { - if (localStorage) { - defaultTab = localStorage.getItem('tab_' + pjax.getPath()) || - 'index'; - } else { - defaultTab = 'index'; - } - } - - if (hash && (node = Y.one('#classdocs').getById(hash))) { - if ((tabPanel = node.ancestor('.api-class-tabpanel', true))) { - if ((tab = Y.one('#classdocs .api-class-tab.' + tabPanel.get('id')))) { - if (classTabView.get('rendered')) { - Y.Widget.getByNode(tab).set('selected', 1); - } else { - tab.addClass('yui3-tab-selected'); - } - } - } - - // Scroll to the desired element if this is a hash URL. - if (node) { - if (classTabView.get('rendered')) { - scrollToNode(); - } else { - classTabView.once('renderedChange', scrollToNode); - } - } - } else { - tab = Y.one('#classdocs .api-class-tab.' + defaultTab); - - // When the `defaultTab` node isn't found, `localStorage` is stale. - if (!tab && defaultTab !== 'index') { - tab = Y.one('#classdocs .api-class-tab.index'); - } - - if (classTabView.get('rendered')) { - Y.Widget.getByNode(tab).set('selected', 1); - } else { - tab.addClass('yui3-tab-selected'); - } - } -}; - -pjax.updateVisibility = function () { - var container = pjax.get('container'); - - container.toggleClass('hide-inherited', - !Y.one('#api-show-inherited').get('checked')); - - container.toggleClass('show-deprecated', - Y.one('#api-show-deprecated').get('checked')); - - container.toggleClass('show-protected', - Y.one('#api-show-protected').get('checked')); - - container.toggleClass('show-private', - Y.one('#api-show-private').get('checked')); - - pjax.checkVisibility(); -}; - -// -- Route Handlers ----------------------------------------------------------- - -pjax.handleClasses = function (req, res, next) { - var status = res.ioResponse.status; - - // Handles success and local filesystem XHRs. - if (!status || (status >= 200 && status < 300)) { - pjax.initClassTabView(); - } - - next(); -}; - -pjax.handleFiles = function (req, res, next) { - var status = res.ioResponse.status; - - // Handles success and local filesystem XHRs. - if (!status || (status >= 200 && status < 300)) { - pjax.initLineNumbers(); - } - - next(); -}; - -// -- Event Handlers ----------------------------------------------------------- - -pjax.onNavigate = function (e) { - var hash = e.hash, - originTarget = e.originEvent && e.originEvent.target, - tab; - - if (hash) { - tab = originTarget && originTarget.ancestor('.yui3-tab', true); - - if (hash === win.location.hash) { - pjax.updateTabState('hashchange'); - } else if (!tab) { - win.location.hash = hash; - } - - e.preventDefault(); - return; - } - - // Only scroll to the top of the page when the URL doesn't have a hash. - this.set('scrollToTop', !e.url.match(/#.+$/)); - - bdNode.addClass('loading'); -}; - -pjax.onOptionClick = function (e) { - pjax.updateVisibility(); -}; - -pjax.onTabSelectionChange = function (e) { - var tab = e.newVal, - tabId = tab.get('contentBox').getAttribute('href').substring(1); - - selectedTab = tab; - - // If switching from a previous tab (i.e., this is not the default tab), - // replace the history entry with a hash URL that will cause this tab to - // be selected if the user navigates away and then returns using the back - // or forward buttons. - if (e.prevVal && localStorage) { - localStorage.setItem('tab_' + pjax.getPath(), tabId); - } - - pjax.checkVisibility(tab); -}; - -// -- Init --------------------------------------------------------------------- - -pjax.on('navigate', pjax.onNavigate); - -pjax.initRoot(); -pjax.upgrade(); -pjax.initClassTabView(); -pjax.initLineNumbers(); -pjax.updateVisibility(); - -Y.APIList.rootPath = pjax.get('root'); - -Y.one('#api-options').delegate('click', pjax.onOptionClick, 'input'); - -Y.on('hashchange', function (e) { - pjax.updateTabState('hashchange'); -}, win); - -}); diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/yui-prettify.js b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/yui-prettify.js deleted file mode 100644 index 18de86495..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/js/yui-prettify.js +++ /dev/null @@ -1,17 +0,0 @@ -YUI().use('node', function(Y) { - var code = Y.all('.prettyprint.linenums'); - if (code.size()) { - code.each(function(c) { - var lis = c.all('ol li'), - l = 1; - lis.each(function(n) { - n.prepend(''); - l++; - }); - }); - var h = location.hash; - location.hash = ''; - h = h.replace('LINE_', 'LINENUM_'); - location.hash = h; - } -}); diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/CHANGES.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/CHANGES.html deleted file mode 100644 index b50b84149..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/CHANGES.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - Change Log - - - README - -

    Known Issues

    -
      -
    • Perl formatting is really crappy. Partly because the author is lazy and - partly because Perl is - hard to parse. -
    • On some browsers, <code> elements with newlines in the text - which use CSS to specify white-space:pre will have the newlines - improperly stripped if the element is not attached to the document at the time - the stripping is done. Also, on IE 6, all newlines will be stripped from - <code> elements because of the way IE6 produces - innerHTML. Workaround: use <pre> for code with - newlines. -
    - -

    Change Log

    -

    29 March 2007

    -
      -
    • Added tests for PHP support - to address - issue 3. -
    • Fixed - bug: prettyPrintOne was not halting. This was not - reachable through the normal entry point. -
    • Fixed - bug: recursing into a script block or PHP tag that was not properly - closed would not silently drop the content. - (test) -
    • Fixed - bug: was eating tabs - (test) -
    • Fixed entity handling so that the caveat -
      -

      Caveats: please properly escape less-thans. x&lt;y - instead of x<y, and use " instead of - &quot; for string delimiters.

      -
      - is no longer applicable. -
    • Added noisefree's C# - patch -
    • Added a distribution that has comments and - whitespace removed to reduce download size from 45.5kB to 12.8kB. -
    -

    4 Jul 2008

    -
      -
    • Added language specific formatters that are triggered by the presence - of a lang-<language-file-extension>
    • -
    • Fixed bug: python handling of '''string''' -
    • Fixed bug: / in regex [charsets] should not end regex -
    -

    5 Jul 2008

    -
      -
    • Defined language extensions for Lisp and Lua -
    -

    14 Jul 2008

    -
      -
    • Language handlers for F#, OCAML, SQL -
    • Support for nocode spans to allow embedding of line - numbers and code annotations which should not be styled or otherwise - affect the tokenization of prettified code. - See the issue 22 - testcase. -
    -

    6 Jan 2009

    -
      -
    • Language handlers for Visual Basic, Haskell, CSS, and WikiText
    • -
    • Added .mxml extension to the markup style handler for - Flex MXML files. See - issue 37. -
    • Added .m extension to the C style handler so that Objective - C source files properly highlight. See - issue 58. -
    • Changed HTML lexer to use the same embedded source mechanism as the - wiki language handler, and changed to use the registered - CSS handler for STYLE element content. -
    -

    21 May 2009

    -
      -
    • Rewrote to improve performance on large files. - See benchmarks.
    • -
    • Fixed bugs with highlighting of Haskell line comments, Lisp - number literals, Lua strings, C preprocessor directives, - newlines in Wiki code on Windows, and newlines in IE6.
    • -
    -

    14 August 2009

    -
      -
    • Fixed prettifying of <code> blocks with embedded newlines. -
    -

    3 October 2009

    -
      -
    • Fixed prettifying of XML/HTML tags that contain uppercase letters. -
    -

    19 July 2010

    -
      -
    • Added support for line numbers. Bug - 22
    • -
    • Added YAML support. Bug - 123
    • -
    • Added VHDL support courtesy Le Poussin.
    • -
    • IE performance improvements. Bug - 102 courtesy jacobly.
    • -
    • A variety of markup formatting fixes courtesy smain and thezbyg.
    • -
    • Fixed copy and paste in IE[678]. -
    • Changed output to use &#160; instead of - &nbsp; so that the output works when embedded in XML. - Bug - 108.
    • -
    - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/COPYING b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/COPYING deleted file mode 100644 index d64569567..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/COPYING +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/README.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/README.html deleted file mode 100644 index c6fe1a32c..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/README.html +++ /dev/null @@ -1,203 +0,0 @@ - - - - - Javascript code prettifier - - - - - - - - - - Languages : CH -

    Javascript code prettifier

    - -

    Setup

    -
      -
    1. Download a distribution -
    2. Include the script and stylesheets in your document - (you will need to make sure the css and js file are on your server, and - adjust the paths in the script and link tag) -
      -<link href="prettify.css" type="text/css" rel="stylesheet" />
      -<script type="text/javascript" src="prettify.js"></script>
      -
    3. Add onload="prettyPrint()" to your - document's body tag. -
    4. Modify the stylesheet to get the coloring you prefer
    5. -
    - -

    Usage

    -

    Put code snippets in - <pre class="prettyprint">...</pre> - or <code class="prettyprint">...</code> - and it will automatically be pretty printed. - - - - -
    The original - Prettier -
    class Voila {
    -public:
    -  // Voila
    -  static const string VOILA = "Voila";
    -
    -  // will not interfere with embedded tags.
    -}
    - -
    class Voila {
    -public:
    -  // Voila
    -  static const string VOILA = "Voila";
    -
    -  // will not interfere with embedded tags.
    -}
    -
    - -

    FAQ

    -

    Which languages does it work for?

    -

    The comments in prettify.js are authoritative but the lexer - should work on a number of languages including C and friends, - Java, Python, Bash, SQL, HTML, XML, CSS, Javascript, and Makefiles. - It works passably on Ruby, PHP, VB, and Awk and a decent subset of Perl - and Ruby, but, because of commenting conventions, doesn't work on - Smalltalk, or CAML-like languages.

    - -

    LISPy languages are supported via an extension: - lang-lisp.js.

    -

    And similarly for - CSS, - Haskell, - Lua, - OCAML, SML, F#, - Visual Basic, - SQL, - Protocol Buffers, and - WikiText.. - -

    If you'd like to add an extension for your favorite language, please - look at src/lang-lisp.js and file an - issue including your language extension, and a testcase.

    - -

    How do I specify which language my code is in?

    -

    You don't need to specify the language since prettyprint() - will guess. You can specify a language by specifying the language extension - along with the prettyprint class like so:

    -
    <pre class="prettyprint lang-html">
    -  The lang-* class specifies the language file extensions.
    -  File extensions supported by default include
    -    "bsh", "c", "cc", "cpp", "cs", "csh", "cyc", "cv", "htm", "html",
    -    "java", "js", "m", "mxml", "perl", "pl", "pm", "py", "rb", "sh",
    -    "xhtml", "xml", "xsl".
    -</pre>
    - -

    It doesn't work on <obfuscated code sample>?

    -

    Yes. Prettifying obfuscated code is like putting lipstick on a pig - — i.e. outside the scope of this tool.

    - -

    Which browsers does it work with?

    -

    It's been tested with IE 6, Firefox 1.5 & 2, and Safari 2.0.4. - Look at the test page to see if it - works in your browser.

    - -

    What's changed?

    -

    See the change log

    - -

    Why doesn't Prettyprinting of strings work on WordPress?

    -

    Apparently wordpress does "smart quoting" which changes close quotes. - This causes end quotes to not match up with open quotes. -

    This breaks prettifying as well as copying and pasting of code samples. - See - WordPress's help center for info on how to stop smart quoting of code - snippets.

    - -

    How do I put line numbers in my code?

    -

    You can use the linenums class to turn on line - numbering. If your code doesn't start at line number 1, you can - add a colon and a line number to the end of that class as in - linenums:52. - -

    For example -

    <pre class="prettyprint linenums:4"
    ->// This is line 4.
    -foo();
    -bar();
    -baz();
    -boo();
    -far();
    -faz();
    -<pre>
    - produces -
    // This is line 4.
    -foo();
    -bar();
    -baz();
    -boo();
    -far();
    -faz();
    -
    - -

    How do I prevent a portion of markup from being marked as code?

    -

    You can use the nocode class to identify a span of markup - that is not code. -

    <pre class=prettyprint>
    -int x = foo();  /* This is a comment  <span class="nocode">This is not code</span>
    -  Continuation of comment */
    -int y = bar();
    -</pre>
    -produces -
    -int x = foo();  /* This is a comment  This is not code
    -  Continuation of comment */
    -int y = bar();
    -
    - -

    For a more complete example see the issue22 - testcase.

    - -

    I get an error message "a is not a function" or "opt_whenDone is not a function"

    -

    If you are calling prettyPrint via an event handler, wrap it in a function. - Instead of doing -

    - addEventListener('load', prettyPrint, false); -
    - wrap it in a closure like -
    - addEventListener('load', function (event) { prettyPrint() }, false); -
    - so that the browser does not pass an event object to prettyPrint which - will confuse it. - -


    - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.css b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.css deleted file mode 100644 index d44b3a228..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.css +++ /dev/null @@ -1 +0,0 @@ -.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} \ No newline at end of file diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.js b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.js deleted file mode 100644 index 4845d05d4..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.js +++ /dev/null @@ -1 +0,0 @@ -window.PR_SHOULD_USE_CONTINUATION=true;var prettyPrintOne;var prettyPrint;(function(){var O=window;var j=["break,continue,do,else,for,if,return,while"];var v=[j,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var q=[v,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var m=[q,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var y=[q,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var T=[y,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,let,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where"];var s="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,throw,true,try,unless,until,when,while,yes";var x=[q,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var t="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var J=[j,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var g=[j,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var I=[j,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var B=[m,T,x,t+J,g,I];var f=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/;var D="str";var A="kwd";var k="com";var Q="typ";var H="lit";var M="pun";var G="pln";var n="tag";var F="dec";var K="src";var R="atn";var o="atv";var P="nocode";var N="(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function l(ab){var af=0;var U=false;var ae=false;for(var X=0,W=ab.length;X122)){if(!(am<65||ai>90)){ah.push([Math.max(65,ai)|32,Math.min(am,90)|32])}if(!(am<97||ai>122)){ah.push([Math.max(97,ai)&~32,Math.min(am,122)&~32])}}}}ah.sort(function(aw,av){return(aw[0]-av[0])||(av[1]-aw[1])});var ak=[];var aq=[];for(var at=0;atau[0]){if(au[1]+1>au[0]){ao.push("-")}ao.push(V(au[1]))}}ao.push("]");return ao.join("")}function Y(an){var al=an.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var aj=al.length;var ap=[];for(var am=0,ao=0;am=2&&ak==="["){al[am]=Z(ai)}else{if(ak!=="\\"){al[am]=ai.replace(/[a-zA-Z]/g,function(aq){var ar=aq.charCodeAt(0);return"["+String.fromCharCode(ar&~32,ar|32)+"]"})}}}}return al.join("")}var ac=[];for(var X=0,W=ab.length;X=0;){U[ae.charAt(ag)]=aa}}var ah=aa[1];var ac=""+ah;if(!ai.hasOwnProperty(ac)){aj.push(ah);ai[ac]=null}}aj.push(/[\0-\uffff]/);X=l(aj)})();var Z=V.length;var Y=function(aj){var ab=aj.sourceCode,aa=aj.basePos;var af=[aa,G];var ah=0;var ap=ab.match(X)||[];var al={};for(var ag=0,at=ap.length;ag=5&&"lang-"===ar.substring(0,5);if(ao&&!(ak&&typeof ak[1]==="string")){ao=false;ar=K}if(!ao){al[ai]=ar}}var ad=ah;ah+=ai.length;if(!ao){af.push(aa+ad,ar)}else{var an=ak[1];var am=ai.indexOf(an);var ae=am+an.length;if(ak[2]){ae=ai.length-ak[2].length;am=ae-an.length}var au=ar.substring(5);C(aa+ad,ai.substring(0,am),Y,af);C(aa+ad+am,an,r(au,an),af);C(aa+ad+ae,ai.substring(ae),Y,af)}}aj.decorations=af};return Y}function i(V){var Y=[],U=[];if(V.tripleQuotedStrings){Y.push([D,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(V.multiLineStrings){Y.push([D,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{Y.push([D,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(V.verbatimStrings){U.push([D,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var ab=V.hashComments;if(ab){if(V.cStyleComments){if(ab>1){Y.push([k,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{Y.push([k,/^#(?:(?:define|e(?:l|nd)if|else|error|ifn?def|include|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}U.push([D,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/,null])}else{Y.push([k,/^#[^\r\n]*/,null,"#"])}}if(V.cStyleComments){U.push([k,/^\/\/[^\r\n]*/,null]);U.push([k,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(V.regexLiterals){var aa=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");U.push(["lang-regex",new RegExp("^"+N+"("+aa+")")])}var X=V.types;if(X){U.push([Q,X])}var W=(""+V.keywords).replace(/^ | $/g,"");if(W.length){U.push([A,new RegExp("^(?:"+W.replace(/[\s,]+/g,"|")+")\\b"),null])}Y.push([G,/^\s+/,null," \r\n\t\xA0"]);var Z=/^.[^\s\w\.$@\'\"\`\/\\]*/;U.push([H,/^@[a-z_$][a-z_$@0-9]*/i,null],[Q,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[G,/^[a-z_$][a-z_$@0-9]*/i,null],[H,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[G,/^\\[\s\S]?/,null],[M,Z,null]);return h(Y,U)}var L=i({keywords:B,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function S(W,ah,aa){var V=/(?:^|\s)nocode(?:\s|$)/;var ac=/\r\n?|\n/;var ad=W.ownerDocument;var ag=ad.createElement("li");while(W.firstChild){ag.appendChild(W.firstChild)}var X=[ag];function af(am){switch(am.nodeType){case 1:if(V.test(am.className)){break}if("br"===am.nodeName){ae(am);if(am.parentNode){am.parentNode.removeChild(am)}}else{for(var ao=am.firstChild;ao;ao=ao.nextSibling){af(ao)}}break;case 3:case 4:if(aa){var an=am.nodeValue;var ak=an.match(ac);if(ak){var aj=an.substring(0,ak.index);am.nodeValue=aj;var ai=an.substring(ak.index+ak[0].length);if(ai){var al=am.parentNode;al.insertBefore(ad.createTextNode(ai),am.nextSibling)}ae(am);if(!aj){am.parentNode.removeChild(am)}}}break}}function ae(al){while(!al.nextSibling){al=al.parentNode;if(!al){return}}function aj(am,at){var ar=at?am.cloneNode(false):am;var ap=am.parentNode;if(ap){var aq=aj(ap,1);var ao=am.nextSibling;aq.appendChild(ar);for(var an=ao;an;an=ao){ao=an.nextSibling;aq.appendChild(an)}}return ar}var ai=aj(al.nextSibling,0);for(var ak;(ak=ai.parentNode)&&ak.nodeType===1;){ai=ak}X.push(ai)}for(var Z=0;Z=U){aj+=2}if(Y>=ar){ac+=2}}}finally{if(au){au.style.display=ak}}}var u={};function d(W,X){for(var U=X.length;--U>=0;){var V=X[U];if(!u.hasOwnProperty(V)){u[V]=W}else{if(O.console){console.warn("cannot override language handler %s",V)}}}}function r(V,U){if(!(V&&u.hasOwnProperty(V))){V=/^\s*]*(?:>|$)/],[k,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[M,/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);d(h([[G,/^[\s]+/,null," \t\r\n"],[o,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[n,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[R,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[M,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);d(h([],[[o,/^[\s\S]+/]]),["uq.val"]);d(i({keywords:m,hashComments:true,cStyleComments:true,types:f}),["c","cc","cpp","cxx","cyc","m"]);d(i({keywords:"null,true,false"}),["json"]);d(i({keywords:T,hashComments:true,cStyleComments:true,verbatimStrings:true,types:f}),["cs"]);d(i({keywords:y,cStyleComments:true}),["java"]);d(i({keywords:I,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);d(i({keywords:J,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);d(i({keywords:t,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);d(i({keywords:g,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);d(i({keywords:x,cStyleComments:true,regexLiterals:true}),["js"]);d(i({keywords:s,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);d(h([],[[D,/^[\s\S]+/]]),["regex"]);function e(X){var W=X.langExtension;try{var U=b(X.sourceNode,X.pre);var V=U.sourceCode;X.sourceCode=V;X.spans=U.spans;X.basePos=0;r(W,V)(X);E(X)}catch(Y){if(O.console){console.log(Y&&Y.stack?Y.stack:Y)}}}function z(Y,X,W){var U=document.createElement("pre");U.innerHTML=Y;if(W){S(U,W,true)}var V={langExtension:X,numberLines:W,sourceNode:U,pre:1};e(V);return U.innerHTML}function c(aj){function ab(al){return document.getElementsByTagName(al)}var ah=[ab("pre"),ab("code"),ab("xmp")];var V=[];for(var ae=0;ae]*(?:>|$)/],[PR.PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],[PR.PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-handlebars",/^]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i],[PR.PR_DECLARATION,/^{{[#^>/]?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{&?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{{>?\s*[\w.][^}]*}}}/],[PR.PR_COMMENT,/^{{![^}]*}}/]]),["handlebars","hbs"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]); \ No newline at end of file diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/JspVerifier.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/JspVerifier.html deleted file mode 100644 index 430a66810..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/JspVerifier.html +++ /dev/null @@ -1,470 +0,0 @@ - - - - - JspVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    JspVerifier Class

    -
    - - - - - -
    - Defined in: lib\jsp_verifier.js:8 -
    - - - - - -
    - - - -
    -

    JSPファイル検証クラス

    -

    設定情報をもとに、実際に検証を実施するクラス (Verifier) を生成し、それらのクラスでの検証結果を集約して返却する。

    -

    Verifier についての設定は、設定ファイルに以下のように記載する。

    -
    -

    設定フォーマット (JSON)

    -
    "verifiers": {
    -  "Verifierのコンストラクタ名": {
    -    // Verifier毎の設定情報
    -  }
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -

    例えば、 TagUsageVerifierSelectorBasedVerifier を利用する場合、以下のように記載する。

    -
    {
    -  "verifiers": {
    -    "TagUsageVerifier": {
    -      "allowed_tags": {
    -      }
    -    }
    -    "SelectorBasedVerifier": {
    -      "required": {
    -      }
    -      "forbidden": {
    -      }
    -    }
    -  }
    -}
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - - - - - -
    - - -
    -

    Methods

    - - -
    -

    JspVerifier

    - - -
    - (
      - -
    • - - configurations - -
    • - -
    • - - additionalVerifierDirs - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\jsp_verifier.js:64 - -

    - - - - - -
    - -
    -

    JSPの検証を行うインスタンスを生成する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - configurations - Object - - - - -
      -

      JSPの検証を行うクラスの設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • verifiers Verifier のコンストラクタ名をキーに持ち、各 Verifier の設定情報を値として持つオブジェクト。
      • -
      - -
      - - -
    • - -
    • - - additionalVerifierDirs - Array | String - - - - -
      -

      独自に作成した Verifier を配置したディレクトリ。

      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\jsp_verifier.js:49 - -

    - - - - - -
    - -
    -

    登録されたVerifierを利用して検証を実施する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - Object - - - - -
      -

      検証対象となるJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - Object - - - - -
      -

      検証対象JSPファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果リスト

    - - -
    -
    - - - -
    - - -
    - - - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/RegexpBasedVerifier.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/RegexpBasedVerifier.html deleted file mode 100644 index 339aae228..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/RegexpBasedVerifier.html +++ /dev/null @@ -1,565 +0,0 @@ - - - - - RegexpBasedVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    RegexpBasedVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    正規表現検証クラス

    -

    JSPファイル内に、指定された正規表現にマッチする文字列が存在(する|しない)かどうかを検証する。

    -

    正規表現は以下のように指定する。

    -
    -

    設定フォーマット (JSON)

    -
    "required": {
    -  "ファイル内で必ず一箇所以上は一致しなくてはいけない正規表現": "コメント"
    -},
    -"forbidden": {
    -  "ファイル内で一致する箇所が存在してはいけない正規表現": "コメント"
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -
    "required": {
    -},
    -"forbidden": {
    -    "/>": "自己終了エレメントを利用すると、その要素以降の記述内容が描画されなくなるため禁止。"
    -}
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    RegexpBasedVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\regexp_based_verifier.js:57 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • required 必ずマッチしなくてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。
      • -
      • forbidden マッチしてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\regexp_based_verifier.js:72 - -

    - - - - - -
    - -
    -

    JSPファイル内に、 required に指定されている正規表現にマッチする文字列が存在すること、 -および、forbiddenに指定されている正規表現にマッチする文字列が存在しないことを検証する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    forbidden

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\regexp_based_verifier.js:47 - -

    - - - - -
    - -
    -

    マッチしてはいけない正規表現のリスト

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    -

    required

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\regexp_based_verifier.js:38 - -

    - - - - -
    - -
    -

    マッチしなくてはいけない正規表現のリスト

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/SelectorBasedVerifier.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/SelectorBasedVerifier.html deleted file mode 100644 index e7d90105a..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/SelectorBasedVerifier.html +++ /dev/null @@ -1,514 +0,0 @@ - - - - - SelectorBasedVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    SelectorBasedVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    DOM検証クラス

    -

    JSPファイル内に、指定されたセレクタにマッチするノードが存在(する|しない)かどうかを検証する。

    -

    セレクタは以下のように指定する。なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。 -使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。

    -

    また、field:textなどのウィジェットをセレクタで指定する場合には、"field\\:text"と、":"をエスケープして記載する必要があることに注意。

    -
    -

    設定フォーマット (JSON)

    -
    "required": {
    -  "ファイル内に必ず一箇所以上はマッチするノードが存在しなくてはいけないセレクタ": "コメント"
    -},
    -"forbidden": {
    -  "ファイル内で一致する箇所が存在してはいけないセレクタ": "コメント"
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -
    "required": {
    -},
    -"forbidden": {
    -  "table:not([listSearchInfoName])": "テーブルにはlistSearchInfoNameがないと結果件数が表示されないため、listSearchInfoNameを強制。",
    -  "table:not([id])" : "テーブルを複数表示する場合にIDが必須となるため、テーブルにはIDを強制。"
    -}
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    SelectorBasedVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\selector_based_verifier.js:62 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • required 必ずマッチしなくてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。
      • -
      • forbidden マッチしてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\selector_based_verifier.js:77 - -

    - - - - - -
    - -
    -

    JSPファイル内に、 required に指定されているセレクタにマッチするノードが存在すること、 -および、forbiddenに指定されているセレクタにマッチするノードが存在しないことを検証する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    forbidden

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\selector_based_verifier.js:52 - -

    - - - - -
    - -
    -

    マッチしてはいけないセレクタのリスト

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagAttributeVerifier.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagAttributeVerifier.html deleted file mode 100644 index 4d6b69eac..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagAttributeVerifier.html +++ /dev/null @@ -1,503 +0,0 @@ - - - - - TagAttributeVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    TagAttributeVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    タグ属性検証クラス

    -

    タグに設定されている属性が、tagファイルで実際に定義されている属性かどうかを検証する。

    -

    下記の設定で、指定されているディレクトリに格納されているタグファイルに対してのみ、属性値の検証が行われる。

    -
    -

    設定フォーマット (JSON)

    -
    "directory": "タグファイルが格納されているディレクトリのパス",
    -"encoding": "タグファイルのエンコーディング"
    -

    設定ファイル記載例 (verification_config.json)

    -
    "directory": "C:\\nablarch\\tutorial\\main\\web\\WEB-INF\\tags\\widget",
    -"encoding": "utf-8"
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    TagAttributeVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_attribute_verifier.js:43 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • directory タグファイルが格納されているディレクトリのパス
      • -
      • encoding タグファイルのエンコーディング
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_attribute_verifier.js:57 - -

    - - - - - -
    - -
    -

    JSPファイルで使用されているタグの属性が、実際に定義されているものであることを検証する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    definitions

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_attribute_verifier.js:33 - -

    - - - - -
    - -
    -

    指定されたディレクトリから読み込んだタグファイルの定義情報

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagUsageVerifier.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagUsageVerifier.html deleted file mode 100644 index 99e7a5e1f..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagUsageVerifier.html +++ /dev/null @@ -1,532 +0,0 @@ - - - - - TagUsageVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    TagUsageVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    使用可能タグ検証クラス

    -

    JSPファイル内で使用されているタグが、使用可能なタグであるかどうかを検証する。

    -

    使用可能なタグは、タグ名に完全一致する正規表現として設定ファイルに以下のように記載する。

    -
    -

    設定フォーマット (JSON)

    -
    "allowed_tags": {
    -  "許可するタグ名に完全一致する正規表現": "コメント"
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -
    {
    -  "verifiers": {
    -    "TagUsageVerifier": {
    -      "allowed_tags": {
    -        "n:form": ""
    -        , "n:set": ""
    -        , "n:write": ""
    -        , "n:ConfirmationPage": ""
    -        , "n:forConfirmationPage": ""
    -        , "n:forInputPage": ""
    -        , "n:param": ""
    -        , "t:page_template": "業務画面のテンプレート"
    -        , "t:errorpage_template": "エラー画面のテンプレート"
    -        , "box:.*": ""
    -        , "button:.*": "ボタンウィジェット"
    -        , "field:.*": "入力フォーム部品"
    -        , "link:.*": "リンクウィジェット"
    -        , "tab:.*": "タブウィジェット"
    -        , "table:.*": "テーブルウィジェット"
    -        , "c:if": ""
    -        , "jsp:attribute": ""
    -        , "%@": "JSPディレクティブ"
    -        , "%--": "JSPコメント"
    -      }
    -    }
    -  }
    -}
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    TagUsageVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_usage_verifier.js:68 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • allowed_tags 使用可能とするタグ名にマッチする正規表現をキーに持ち、コメントを値としてもつオブジェクト。
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_usage_verifier.js:81 - -

    - - - - - -
    - -
    -

    JSPファイルで使用されている全てのタグが、 allowed_tags に指定されているかどうかを検証する。

    -

    なお、以下のUI開発基盤を利用したローカル表示用のマジックコメントは解析対象にならない。

    -
    <!-- <%/* --> <script src="js/devtool.js"></script><meta charset="utf-8"><body> <!-- * /%> -->
    -

    また、JSPディレクティブについては、下記の置換を行ってディレクティブ名を正規化している。

    -
    replace(/<%@\s+([a-zA-Z]+)\s/mg, '<%@$1 ')
    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    allowed_tags

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_usage_verifier.js:58 - -

    - - - - -
    - -
    -

    使用可能とするタグ名にマッチする正規表現

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/VerificationError.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/VerificationError.html deleted file mode 100644 index 9df37aefb..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/VerificationError.html +++ /dev/null @@ -1,573 +0,0 @@ - - - - - VerificationError - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    VerificationError Class

    -
    - - - - - -
    - Defined in: lib\verification_error.js:3 -
    - - - - - -
    - - - -
    -

    検証結果を表すクラス。

    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    VerificationError

    - - -
    - (
      - -
    • - - verifier - -
    • - -
    • - - message - -
    • - -
    • - - path - -
    • - -
    • - - contents - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:44 - -

    - - - - - -
    - -
    -

    検証結果を生成する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - verifier - String - - - - -
      -

      検証を実施したクラス名。

      - -
      - - -
    • - -
    • - - message - String - - - - -
      -

      エラー内容を表すメッセージ

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証エラーとなったファイルのパス

      - -
      - - -
    • - -
    • - - contents - String - - - - -
      -

      検証エラーとなったノードの内容

      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    message

    - String - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:19 - -

    - - - - -
    - -
    -

    エラー内容を表すメッセージ。

    - -
    - - - - - - -
    - - -
    -

    path

    - String - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:27 - -

    - - - - -
    - -
    -

    このエラーが発生したファイルのパス

    - -
    - - - - - - -
    - - -
    -

    path

    - String - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:35 - -

    - - - - -
    - -
    -

    検証エラーとなったノードの内容

    - -
    - - - - - - -
    - - -
    -

    verifier

    - String - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:11 - -

    - - - - -
    - -
    -

    検証を実施したクラス名。

    - -
    - - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/WrappingTagVerifier.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/WrappingTagVerifier.html deleted file mode 100644 index cae202a5b..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/WrappingTagVerifier.html +++ /dev/null @@ -1,531 +0,0 @@ - - - - - WrappingTagVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    WrappingTagVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    親タグ検証クラス

    -

    正規表現で指定されたタグ名にマッチするタグの親タグに、指定されているタグが存在(する|しない)かどうかを検証する。

    -

    検証対象とするタグおよびその親タグは以下のように設定する。

    -

    childは 正規表現 で指定するが、parentは セレクタ で指定することに注意。 -このため、parentにn:formなどの":"を含むタグを指定したい場合には、 "n\\:form" のようにエスケープする必要がある。

    -

    なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。 -使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。

    -
    -

    設定フォーマット (JSON)

    -
    "required": {
    -  "コメント": {
    -    "child": "検証対象とするタグにマッチする正規表現",
    -    "parent": "childに指定したタグの親に存在しなくてはいけないタグにマッチするセレクタ"
    -  }
    -},
    -"forbidden": {
    -  "コメント": {
    -    "child": "検証対象とするタグにマッチする正規表現",
    -    "parent": "childに指定したタグの親に存在してはいけないタグにマッチするセレクタ"
    -  }
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -
    "required": {
    -  "tableウィジェットは、n:formで囲む必要がある。": {
    -    "child": "table:.*",
    -    "parent": "n\\:form"
    -  },
    -  "buttonウィジェットは、n:formで囲む必要がある。": {
    -    "child": "button:.*",
    -    "parent": "n\\:form"
    -  },
    - "設計書ビューで画面項目定義に表示されるウィジェットは、spec:layoutで囲む必要がある。": {
    -   "child": "(table|field|column):.+",
    -   "parent": "spec\\:layout"
    - }
    -

    }, - "forbidden": { - }

    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\wrapping_tag_verifier.js:96 - -

    - - - - - -
    - -
    -

    タグの親子関係を検証する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    -

    WrappingTagVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\wrapping_tag_verifier.js:81 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • directory タグファイルが格納されているディレクトリのパス
      • -
      • encoding タグファイルのエンコーディング
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    forbidden

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\wrapping_tag_verifier.js:71 - -

    - - - - -
    - -
    -

    満たしてはいけない親子関係のリスト

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/index.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/index.html deleted file mode 100644 index 487fe15b2..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - Redirector - - - - Click here to redirect - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/data.json b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/data.json deleted file mode 100644 index ddd85665b..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/data.json +++ /dev/null @@ -1,725 +0,0 @@ -{ - "project": {}, - "files": { - "lib\\fileutil\\fs_ext.js": { - "name": "lib\\fileutil\\fs_ext.js", - "modules": {}, - "classes": {}, - "fors": {}, - "namespaces": {} - }, - "lib\\fileutil\\jsp_file_reader.js": { - "name": "lib\\fileutil\\jsp_file_reader.js", - "modules": {}, - "classes": {}, - "fors": {}, - "namespaces": {} - }, - "lib\\fileutil\\tag_file_reader.js": { - "name": "lib\\fileutil\\tag_file_reader.js", - "modules": {}, - "classes": {}, - "fors": {}, - "namespaces": {} - }, - "lib\\parser\\tag_file_parser.js": { - "name": "lib\\parser\\tag_file_parser.js", - "modules": {}, - "classes": {}, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\regexp_based_verifier.js": { - "name": "lib\\verifiers\\regexp_based_verifier.js", - "modules": {}, - "classes": { - "RegexpBasedVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\selector_based_verifier.js": { - "name": "lib\\verifiers\\selector_based_verifier.js", - "modules": {}, - "classes": { - "SelectorBasedVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\tag_attribute_verifier.js": { - "name": "lib\\verifiers\\tag_attribute_verifier.js", - "modules": {}, - "classes": { - "TagAttributeVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\tag_usage_verifier.js": { - "name": "lib\\verifiers\\tag_usage_verifier.js", - "modules": {}, - "classes": { - "TagUsageVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\wrapping_tag_verifier.js": { - "name": "lib\\verifiers\\wrapping_tag_verifier.js", - "modules": {}, - "classes": { - "WrappingTagVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\jsp_verifier.js": { - "name": "lib\\jsp_verifier.js", - "modules": {}, - "classes": { - "JspVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verification_error.js": { - "name": "lib\\verification_error.js", - "modules": {}, - "classes": { - "VerificationError": 1 - }, - "fors": {}, - "namespaces": {} - } - }, - "modules": {}, - "classes": { - "RegexpBasedVerifier": { - "name": "RegexpBasedVerifier", - "shortname": "RegexpBasedVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 7, - "description": "正規表現検証クラス\n=====================================================================\n\nJSPファイル内に、指定された正規表現にマッチする文字列が存在(する|しない)かどうかを検証する。\n\n正規表現は以下のように指定する。\n\n> __設定フォーマット (JSON)__\n>\n> \"required\": {\n> \"ファイル内で必ず一箇所以上は一致しなくてはいけない正規表現\": \"コメント\"\n> },\n> \"forbidden\": {\n> \"ファイル内で一致する箇所が存在してはいけない正規表現\": \"コメント\"\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> \"required\": {\n> },\n> \"forbidden\": {\n> \"/>\": \"自己終了エレメントを利用すると、その要素以降の記述内容が描画されなくなるため禁止。\"\n> }" - }, - "SelectorBasedVerifier": { - "name": "SelectorBasedVerifier", - "shortname": "SelectorBasedVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 8, - "description": "DOM検証クラス\n=====================================================================\n\nJSPファイル内に、指定されたセレクタにマッチするノードが存在(する|しない)かどうかを検証する。\n\nセレクタは以下のように指定する。なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。\n使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。\n\nまた、field:textなどのウィジェットをセレクタで指定する場合には、\"field\\\\\\\\:text\"と、\":\"をエスケープして記載する必要があることに注意。\n\n> __設定フォーマット (JSON)__\n>\n> \"required\": {\n> \"ファイル内に必ず一箇所以上はマッチするノードが存在しなくてはいけないセレクタ\": \"コメント\"\n> },\n> \"forbidden\": {\n> \"ファイル内で一致する箇所が存在してはいけないセレクタ\": \"コメント\"\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> \"required\": {\n> },\n> \"forbidden\": {\n> \"table:not([listSearchInfoName])\": \"テーブルにはlistSearchInfoNameがないと結果件数が表示されないため、listSearchInfoNameを強制。\",\n> \"table:not([id])\" : \"テーブルを複数表示する場合にIDが必須となるため、テーブルにはIDを強制。\"\n> }" - }, - "TagAttributeVerifier": { - "name": "TagAttributeVerifier", - "shortname": "TagAttributeVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\tag_attribute_verifier.js", - "line": 9, - "description": "タグ属性検証クラス\n=====================================================================\n\nタグに設定されている属性が、tagファイルで実際に定義されている属性かどうかを検証する。\n\n下記の設定で、指定されているディレクトリに格納されているタグファイルに対してのみ、属性値の検証が行われる。\n\n> __設定フォーマット (JSON)__\n>\n> \"directory\": \"タグファイルが格納されているディレクトリのパス\",\n> \"encoding\": \"タグファイルのエンコーディング\"\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> \"directory\": \"C:\\\\nablarch\\\\tutorial\\\\main\\\\web\\\\WEB-INF\\\\tags\\\\widget\",\n> \"encoding\": \"utf-8\"" - }, - "TagUsageVerifier": { - "name": "TagUsageVerifier", - "shortname": "TagUsageVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\tag_usage_verifier.js", - "line": 8, - "description": "使用可能タグ検証クラス\n=====================================================================\n\nJSPファイル内で使用されているタグが、使用可能なタグであるかどうかを検証する。\n\n使用可能なタグは、タグ名に完全一致する正規表現として設定ファイルに以下のように記載する。\n\n> __設定フォーマット (JSON)__\n>\n> \"allowed_tags\": {\n> \"許可するタグ名に完全一致する正規表現\": \"コメント\"\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> {\n> \"verifiers\": {\n> \"TagUsageVerifier\": {\n> \"allowed_tags\": {\n> \"n:form\": \"\"\n> , \"n:set\": \"\"\n> , \"n:write\": \"\"\n> , \"n:ConfirmationPage\": \"\"\n> , \"n:forConfirmationPage\": \"\"\n> , \"n:forInputPage\": \"\"\n> , \"n:param\": \"\"\n> , \"t:page_template\": \"業務画面のテンプレート\"\n> , \"t:errorpage_template\": \"エラー画面のテンプレート\"\n> , \"box:.*\": \"\"\n> , \"button:.*\": \"ボタンウィジェット\"\n> , \"field:.*\": \"入力フォーム部品\"\n> , \"link:.*\": \"リンクウィジェット\"\n> , \"tab:.*\": \"タブウィジェット\"\n> , \"table:.*\": \"テーブルウィジェット\"\n> , \"c:if\": \"\"\n> , \"jsp:attribute\": \"\"\n> , \"%@\": \"JSPディレクティブ\"\n> , \"%--\": \"JSPコメント\"\n> }\n> }\n> }\n> }" - }, - "WrappingTagVerifier": { - "name": "WrappingTagVerifier", - "shortname": "WrappingTagVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 8, - "description": "親タグ検証クラス\n=====================================================================\n\n正規表現で指定されたタグ名にマッチするタグの親タグに、指定されているタグが存在(する|しない)かどうかを検証する。\n\n検証対象とするタグおよびその親タグは以下のように設定する。\n\nchildは __正規表現__ で指定するが、parentは __セレクタ__ で指定することに注意。\nこのため、parentにn:formなどの\":\"を含むタグを指定したい場合には、 \"n\\\\\\\\:form\" のようにエスケープする必要がある。\n\nなお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。\n使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。\n\n> __設定フォーマット (JSON)__\n>\n> \"required\": {\n> \"コメント\": {\n> \"child\": \"検証対象とするタグにマッチする正規表現\",\n> \"parent\": \"childに指定したタグの親に存在しなくてはいけないタグにマッチするセレクタ\"\n> }\n> },\n> \"forbidden\": {\n> \"コメント\": {\n> \"child\": \"検証対象とするタグにマッチする正規表現\",\n> \"parent\": \"childに指定したタグの親に存在してはいけないタグにマッチするセレクタ\"\n> }\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> \"required\": {\n> \"tableウィジェットは、n:formで囲む必要がある。\": {\n> \"child\": \"table:.*\",\n> \"parent\": \"n\\\\:form\"\n> },\n> \"buttonウィジェットは、n:formで囲む必要がある。\": {\n> \"child\": \"button:.*\",\n> \"parent\": \"n\\\\:form\"\n> },\n> \"設計書ビューで画面項目定義に表示されるウィジェットは、spec:layoutで囲む必要がある。\": {\n> \"child\": \"(table|field|column):.+\",\n> \"parent\": \"spec\\\\:layout\"\n> }\n> },\n> \"forbidden\": {\n> }" - }, - "JspVerifier": { - "name": "JspVerifier", - "shortname": "JspVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\jsp_verifier.js", - "line": 8, - "description": "JSPファイル検証クラス\n=====================================================================\n\n設定情報をもとに、実際に検証を実施するクラス (`Verifier`) を生成し、それらのクラスでの検証結果を集約して返却する。\n\n`Verifier` についての設定は、設定ファイルに以下のように記載する。\n\n> __設定フォーマット (JSON)__\n>\n> \"verifiers\": {\n> \"Verifierのコンストラクタ名\": {\n> // Verifier毎の設定情報\n> }\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> 例えば、 `TagUsageVerifier` と `SelectorBasedVerifier` を利用する場合、以下のように記載する。\n>\n> {\n> \"verifiers\": {\n> \"TagUsageVerifier\": {\n> \"allowed_tags\": {\n> }\n> }\n> \"SelectorBasedVerifier\": {\n> \"required\": {\n> }\n> \"forbidden\": {\n> }\n> }\n> }\n> }\n>" - }, - "VerificationError": { - "name": "VerificationError", - "shortname": "VerificationError", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verification_error.js", - "line": 3, - "description": "検証結果を表すクラス。" - } - }, - "classitems": [ - { - "file": "lib\\fileutil\\fs_ext.js", - "line": 6, - "description": "指定されたディレクトリから、filterにマッチするファイルを再帰的に抽出し、\nそれらのファイルへの絶対パスのリストを返却する。", - "params": [ - { - "name": "dir", - "description": "ファイルを抽出する対象のディレクトリ" - }, - { - "name": "filter", - "description": "抽出対象とするファイルの場合にtrueを返却するフィルター" - } - ], - "return": { - "description": "抽出されたファイルへの絶対パスのリスト", - "type": "Array" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\fileutil\\jsp_file_reader.js", - "line": 5, - "description": "以下の正規化処理を行って、JSPファイルを読み込む。\n\n* devtool.js読み込み用ののマジックコメントを除去\n* JSPディレクティブ(<%@)の後のスペースを除去", - "params": [ - { - "name": "path", - "description": "読み込むファイルのパス" - }, - { - "name": "encoding", - "description": "読み込むファイルのエンコーディング" - } - ], - "return": { - "description": "正規化されて読み込まれたJSPファイルの内容", - "type": "String" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\fileutil\\tag_file_reader.js", - "line": 10, - "description": "指定されたディレクトリに格納されているtagファイルを読み込み、\nそれぞれのtagの定義情報のリストを返却する。\n\ntagの定義情報は以下の形式で格納されている。\n\nname\n: tag名。指定されたディレクトリをベースとして、配下のディレクトリ名とファイル名を、dirname:filename形式で結合した値。\n\nattributes\n: tagファイルの内容をTagFileParserでパースした内容", - "params": [ - { - "name": "directory", - "description": "tagファイルの格納されているディレクトリ" - }, - { - "name": "encoding", - "description": "tagファイルのエンコーディング" - } - ], - "return": { - "description": "読み込まれたtagファイルのパース結果リスト(キー:tag名、値:tagファイルの定義情報)", - "type": "Array" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\parser\\tag_file_parser.js", - "line": 8, - "description": "tagファイルのattribute定義情報のリストを取得し、返却する。\n\nattribute定義情報は、以下の属性値を格納したオブジェクトとなっており、すべてStringとして格納されている。\nなお、属性値が定義されていない場合には、undefinedとして格納される。\n\n* name\n* description\n* required\n* type\n* rtexprvalue\n* fragment", - "params": [ - { - "name": "body", - "description": "tagファイルの内容" - } - ], - "return": { - "description": "tagファイルに定義されている属性のリスト", - "type": "Array" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 38, - "description": "マッチしなくてはいけない正規表現のリスト", - "itemtype": "property", - "name": "required", - "type": "Array", - "default": "[]", - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 47, - "description": "マッチしてはいけない正規表現のリスト", - "itemtype": "property", - "name": "forbidden", - "type": "Array", - "default": "[]", - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 57, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "RegexpBasedVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **required** 必ずマッチしなくてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。\n * **forbidden** マッチしてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。", - "type": "Object" - } - ], - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 72, - "description": "JSPファイル内に、 required に指定されている正規表現にマッチする文字列が存在すること、\nおよび、forbiddenに指定されている正規表現にマッチする文字列が存在しないことを検証する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 43, - "description": "マッチしなくてはいけないセレクタのリスト", - "params": [ - { - "name": "required", - "description": "" - } - ], - "type": "Array", - "default": "[]", - "class": "SelectorBasedVerifier" - }, - { - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 52, - "description": "マッチしてはいけないセレクタのリスト", - "itemtype": "property", - "name": "forbidden", - "type": "Array", - "default": "[]", - "class": "SelectorBasedVerifier" - }, - { - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 62, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "SelectorBasedVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **required** 必ずマッチしなくてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。\n * **forbidden** マッチしてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。", - "type": "Object" - } - ], - "class": "SelectorBasedVerifier" - }, - { - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 77, - "description": "JSPファイル内に、 required に指定されているセレクタにマッチするノードが存在すること、\nおよび、forbiddenに指定されているセレクタにマッチするノードが存在しないことを検証する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "SelectorBasedVerifier" - }, - { - "file": "lib\\verifiers\\tag_attribute_verifier.js", - "line": 33, - "description": "指定されたディレクトリから読み込んだタグファイルの定義情報", - "itemtype": "property", - "name": "definitions", - "type": "Array", - "default": "[]", - "class": "TagAttributeVerifier" - }, - { - "file": "lib\\verifiers\\tag_attribute_verifier.js", - "line": 43, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "TagAttributeVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **directory** タグファイルが格納されているディレクトリのパス\n * **encoding** タグファイルのエンコーディング", - "type": "Object" - } - ], - "class": "TagAttributeVerifier" - }, - { - "file": "lib\\verifiers\\tag_attribute_verifier.js", - "line": 57, - "description": "JSPファイルで使用されているタグの属性が、実際に定義されているものであることを検証する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "TagAttributeVerifier" - }, - { - "file": "lib\\verifiers\\tag_usage_verifier.js", - "line": 58, - "description": "使用可能とするタグ名にマッチする正規表現", - "itemtype": "property", - "name": "allowed_tags", - "type": "Array", - "default": "[]", - "class": "TagUsageVerifier" - }, - { - "file": "lib\\verifiers\\tag_usage_verifier.js", - "line": 68, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "TagUsageVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **allowed_tags** 使用可能とするタグ名にマッチする正規表現をキーに持ち、コメントを値としてもつオブジェクト。", - "type": "Object" - } - ], - "class": "TagUsageVerifier" - }, - { - "file": "lib\\verifiers\\tag_usage_verifier.js", - "line": 81, - "description": "JSPファイルで使用されている全てのタグが、 `allowed_tags` に指定されているかどうかを検証する。\n\nなお、以下のUI開発基盤を利用したローカル表示用のマジックコメントは解析対象にならない。\n\n \n\nまた、JSPディレクティブについては、下記の置換を行ってディレクティブ名を正規化している。\n\n replace(/<%@\\s+([a-zA-Z]+)\\s/mg, '<%@$1 ')", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "TagUsageVerifier" - }, - { - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 62, - "description": "満たさなくてはいけない親子関係のリスト", - "params": [ - { - "name": "required", - "description": "" - } - ], - "type": "Array", - "default": "[]", - "class": "WrappingTagVerifier" - }, - { - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 71, - "description": "満たしてはいけない親子関係のリスト", - "itemtype": "property", - "name": "forbidden", - "type": "Array", - "default": "[]", - "class": "WrappingTagVerifier" - }, - { - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 81, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "WrappingTagVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **directory** タグファイルが格納されているディレクトリのパス\n * **encoding** タグファイルのエンコーディング", - "type": "Object" - } - ], - "class": "WrappingTagVerifier" - }, - { - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 96, - "description": "タグの親子関係を検証する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "WrappingTagVerifier" - }, - { - "file": "lib\\jsp_verifier.js", - "line": 49, - "description": "登録されたVerifierを利用して検証を実施する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象となるJSPファイルの内容" - }, - { - "name": "path", - "description": "検証対象JSPファイルのパス" - } - ], - "return": { - "description": "検証結果リスト", - "type": "Array" - }, - "class": "JspVerifier" - }, - { - "file": "lib\\jsp_verifier.js", - "line": 64, - "description": "JSPの検証を行うインスタンスを生成する。", - "is_constructor": 1, - "itemtype": "method", - "name": "JspVerifier", - "params": [ - { - "name": "configurations", - "description": "JSPの検証を行うクラスの設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **verifiers** `Verifier` のコンストラクタ名をキーに持ち、各 `Verifier` の設定情報を値として持つオブジェクト。", - "type": "Object" - }, - { - "name": "additionalVerifierDirs", - "description": "独自に作成した `Verifier` を配置したディレクトリ。", - "type": "Array | String" - } - ], - "class": "JspVerifier" - }, - { - "file": "lib\\jsp_verifier.js", - "line": 99, - "description": "verifierDirs内のすべてのファイルを読み込み、Verifierのコンストラクタを取得する。", - "params": [ - { - "name": "verifierDirs", - "description": "Verifierが格納されているディレクトリ" - } - ], - "return": { - "description": "Verifierの名前がキー、コンストラクタメソッドが値となっているオブジェクト", - "type": "Object" - }, - "class": "JspVerifier" - }, - { - "file": "lib\\verification_error.js", - "line": 11, - "description": "検証を実施したクラス名。", - "itemtype": "property", - "name": "verifier", - "type": "String", - "class": "VerificationError" - }, - { - "file": "lib\\verification_error.js", - "line": 19, - "description": "エラー内容を表すメッセージ。", - "itemtype": "property", - "name": "message", - "type": "String", - "class": "VerificationError" - }, - { - "file": "lib\\verification_error.js", - "line": 27, - "description": "このエラーが発生したファイルのパス", - "itemtype": "property", - "name": "path", - "type": "String", - "class": "VerificationError" - }, - { - "file": "lib\\verification_error.js", - "line": 35, - "description": "検証エラーとなったノードの内容", - "itemtype": "property", - "name": "path", - "type": "String", - "class": "VerificationError" - }, - { - "file": "lib\\verification_error.js", - "line": 44, - "description": "検証結果を生成する。", - "is_constructor": 1, - "itemtype": "method", - "name": "VerificationError", - "params": [ - { - "name": "verifier", - "description": "検証を実施したクラス名。", - "type": "String" - }, - { - "name": "message", - "description": "エラー内容を表すメッセージ", - "type": "String" - }, - { - "name": "path", - "description": "検証エラーとなったファイルのパス", - "type": "String" - }, - { - "name": "contents", - "description": "検証エラーとなったノードの内容", - "type": "String" - } - ], - "class": "VerificationError" - } - ], - "warnings": [ - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\fileutil\\fs_ext.js:6" - }, - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\fileutil\\jsp_file_reader.js:5" - }, - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\fileutil\\tag_file_reader.js:10" - }, - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\parser\\tag_file_parser.js:8" - }, - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\jsp_verifier.js:99" - }, - { - "message": "Missing item type\n指定されたディレクトリから、filterにマッチするファイルを再帰的に抽出し、\nそれらのファイルへの絶対パスのリストを返却する。", - "line": " lib\\fileutil\\fs_ext.js:6" - }, - { - "message": "Missing item type\n以下の正規化処理を行って、JSPファイルを読み込む。\n\n* devtool.js読み込み用ののマジックコメントを除去\n* JSPディレクティブ(<%@)の後のスペースを除去", - "line": " lib\\fileutil\\jsp_file_reader.js:5" - }, - { - "message": "Missing item type\n指定されたディレクトリに格納されているtagファイルを読み込み、\nそれぞれのtagの定義情報のリストを返却する。\n\ntagの定義情報は以下の形式で格納されている。\n\nname\n: tag名。指定されたディレクトリをベースとして、配下のディレクトリ名とファイル名を、dirname:filename形式で結合した値。\n\nattributes\n: tagファイルの内容をTagFileParserでパースした内容", - "line": " lib\\fileutil\\tag_file_reader.js:10" - }, - { - "message": "Missing item type\ntagファイルのattribute定義情報のリストを取得し、返却する。\n\nattribute定義情報は、以下の属性値を格納したオブジェクトとなっており、すべてStringとして格納されている。\nなお、属性値が定義されていない場合には、undefinedとして格納される。\n\n* name\n* description\n* required\n* type\n* rtexprvalue\n* fragment", - "line": " lib\\parser\\tag_file_parser.js:8" - }, - { - "message": "Missing item type\nマッチしなくてはいけないセレクタのリスト", - "line": " lib\\verifiers\\selector_based_verifier.js:43" - }, - { - "message": "Missing item type\n満たさなくてはいけない親子関係のリスト", - "line": " lib\\verifiers\\wrapping_tag_verifier.js:62" - }, - { - "message": "Missing item type\nverifierDirs内のすべてのファイルを読み込み、Verifierのコンストラクタを取得する。", - "line": " lib\\jsp_verifier.js:99" - } - ] -} \ No newline at end of file diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/index.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/index.html deleted file mode 100644 index 487fe15b2..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - Redirector - - - - Click here to redirect - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_fs_ext.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_fs_ext.js.html deleted file mode 100644 index 42fb444dc..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_fs_ext.js.html +++ /dev/null @@ -1,155 +0,0 @@ - - - - - lib\fileutil\fs_ext.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\fileutil\fs_ext.js

    - -
    -
    -'use strict';
    -
    -var fs = require('fs')
    -  , path = require('path');
    -
    -/**
    - * 指定されたディレクトリから、filterにマッチするファイルを再帰的に抽出し、
    - * それらのファイルへの絶対パスのリストを返却する。
    - *
    - * @param dir ファイルを抽出する対象のディレクトリ
    - * @param filter 抽出対象とするファイルの場合にtrueを返却するフィルター
    - * @returns {Array} 抽出されたファイルへの絶対パスのリスト
    - */
    -function FsExt_listFilesRecursively(dir, filter) {
    -  var results = [];
    -  var list = fs.readdirSync(dir);
    -  list.forEach(function(file) {
    -    file = dir + path.sep + file;
    -    var stat = fs.statSync(file)
    -      , normalized;
    -    if(stat && stat.isDirectory()) {
    -      results = results.concat(FsExt_listFilesRecursively(file, filter))
    -    } else {
    -      normalized = path.resolve(path.normalize(file));
    -      if(filter(normalized)) {
    -        results.push(normalized);
    -      }
    -    }
    -  });
    -  return results
    -}
    -
    -module.exports = {
    -  listFilesRecursively: FsExt_listFilesRecursively
    -};
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_jsp_file_reader.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_jsp_file_reader.js.html deleted file mode 100644 index 24e26d710..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_jsp_file_reader.js.html +++ /dev/null @@ -1,143 +0,0 @@ - - - - - lib\fileutil\jsp_file_reader.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\fileutil\jsp_file_reader.js

    - -
    -
    -'use strict';
    -
    -var fs = require('fs');
    -
    -/**
    - * 以下の正規化処理を行って、JSPファイルを読み込む。
    - *
    - * * devtool.js読み込み用ののマジックコメントを除去
    - * * JSPディレクティブ(<%@)の後のスペースを除去
    - *
    - * @param path 読み込むファイルのパス
    - * @param encoding 読み込むファイルのエンコーディング
    - * @returns {String} 正規化されて読み込まれたJSPファイルの内容
    - */
    -function JspFileReader_readFormatted(path, encoding) {
    -  var DEVTOOL_MAGIC_COMMENT = '<!-- <%/* --> <script src="js/devtool.js"></script><meta charset="utf-8"><body> <!-- */%> -->'
    -    , jsp = fs.readFileSync(path, encoding);
    -  return jsp.replace(DEVTOOL_MAGIC_COMMENT, '').replace(/<%@\s+([a-zA-Z]+)\s/mg, '<%@$1 ');
    -}
    -
    -module.exports = {
    -  readFormatted: JspFileReader_readFormatted
    -};
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_tag_file_reader.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_tag_file_reader.js.html deleted file mode 100644 index 1cfc87e51..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_tag_file_reader.js.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - lib\fileutil\tag_file_reader.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\fileutil\tag_file_reader.js

    - -
    -
    -'use strict';
    -
    -require('sugar');
    -
    -var reader = require('./jsp_file_reader')
    -  , path = require('path')
    -  , fsExt = require('./fs_ext')
    -  , parser = require('../parser/tag_file_parser');
    -
    -/**
    - * 指定されたディレクトリに格納されているtagファイルを読み込み、
    - * それぞれのtagの定義情報のリストを返却する。
    - *
    - * tagの定義情報は以下の形式で格納されている。
    - *
    - * name
    - * : tag名。指定されたディレクトリをベースとして、配下のディレクトリ名とファイル名を、dirname:filename形式で結合した値。
    - *
    - * attributes
    - * : tagファイルの内容をTagFileParserでパースした内容
    - *
    - * @param directory tagファイルの格納されているディレクトリ
    - * @param encoding tagファイルのエンコーディング
    - * @returns {Array} 読み込まれたtagファイルのパース結果リスト(キー:tag名、値:tagファイルの定義情報)
    - */
    -function TagFileReader_loadAllTags(directory, encoding) {
    -  directory = path.resolve(path.normalize(directory));
    -  return fsExt.listFilesRecursively(directory, function(name) {
    -    return path.extname(name) === '.tag'
    -  }).reduce(function(loaded, file) {
    -    var parsed = {};
    -    // 指定されたディレクトリ名の末尾に\や/がついているかどうか分からないので、
    -    // ディレクトリ名除去後に、先頭の\と/を除去する。
    -    parsed['name'] = file.replace(directory, '').replace(/^[\/\\]/, '').replace(/[\/\\]/g, ':').replace(/\.tag$/, '');
    -    parsed['attributes'] = parser.parse(reader.readFormatted(file, encoding));
    -    loaded.push(parsed);
    -    return loaded
    -  }, []);
    -}
    -
    -module.exports = {
    -  loadAllTags: TagFileReader_loadAllTags
    -};
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_jsp_verifier.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_jsp_verifier.js.html deleted file mode 100644 index 850609fb0..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_jsp_verifier.js.html +++ /dev/null @@ -1,237 +0,0 @@ - - - - - lib\jsp_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\jsp_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var fs = require('fs')
    -  , path = require('path');
    -
    -/**
    - * JSPファイル検証クラス
    - * =====================================================================
    - *
    - * 設定情報をもとに、実際に検証を実施するクラス (`Verifier`) を生成し、それらのクラスでの検証結果を集約して返却する。
    - *
    - * `Verifier` についての設定は、設定ファイルに以下のように記載する。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "verifiers": {
    - * >       "Verifierのコンストラクタ名": {
    - * >         // Verifier毎の設定情報
    - * >       }
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * > 例えば、 `TagUsageVerifier` と `SelectorBasedVerifier` を利用する場合、以下のように記載する。
    - * >
    - * >     {
    - * >       "verifiers": {
    - * >         "TagUsageVerifier": {
    - * >           "allowed_tags": {
    - * >           }
    - * >         }
    - * >         "SelectorBasedVerifier": {
    - * >           "required": {
    - * >           }
    - * >           "forbidden": {
    - * >           }
    - * >         }
    - * >       }
    - * >     }
    - * >
    - *
    - * @class JspVerifier
    - */
    -JspVerifier.prototype = {
    -  constructor: JspVerifier,
    -
    -  /**
    -   * 登録されたVerifierを利用して検証を実施する。
    -   *
    -   * @method verify
    -   * @param jsp 検証対象となるJSPファイルの内容
    -   * @param path 検証対象JSPファイルのパス
    -   * @return {Array} 検証結果リスト
    -   */
    -  verify: function(jsp, path) {
    -    return this.verifiers.map(function(verifier) {
    -      return verifier.verify(jsp, path);
    -    }).flatten();
    -  }
    -};
    -
    -/**
    - * JSPの検証を行うインスタンスを生成する。
    - *
    - * @constructor
    - * @method JspVerifier
    - * @param configurations {Object} JSPの検証を行うクラスの設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **verifiers** `Verifier` のコンストラクタ名をキーに持ち、各 `Verifier` の設定情報を値として持つオブジェクト。
    - *
    - * @param additionalVerifierDirs {Array | String} 独自に作成した `Verifier` を配置したディレクトリ。
    - */
    -function JspVerifier(configurations, additionalVerifierDirs) {
    -  var self = this
    -    , verifierConfig = Object.extended(configurations["verifiers"])
    -    , verifierDirs = [__dirname + "/verifiers", additionalVerifierDirs].flatten()
    -    , constructors = loadVerifiers(verifierDirs);
    -
    -  self.verifiers = [];
    -  verifierConfig.each(function(name, config) {
    -      var constructor = constructors[name];
    -      if(!constructor) {
    -        throw {message: ("設定ファイルに記載されている {name} を生成できませんでした。\n" +
    -                         "Verifierの配置ディレクトリは\n" +
    -                         "{verifierDirs}\n" +
    -                         "と設定されています。\n" +
    -                         "設定ファイルが正しいか、もしくは配置ディレクトリを正しく設定しているかを確認してください。").assign({
    -                                                                                   "name": name,
    -                                                                                   "verifierDirs": "\t" + verifierDirs.join("\n\t")
    -                                                                                 })};
    -      }
    -      self.verifiers.push(new constructor(config))
    -    }
    -  );
    -}
    -
    -/**
    - * verifierDirs内のすべてのファイルを読み込み、Verifierのコンストラクタを取得する。
    - *
    - * @param verifierDirs Verifierが格納されているディレクトリ
    - * @returns {Object} Verifierの名前がキー、コンストラクタメソッドが値となっているオブジェクト
    - */
    -function loadVerifiers(verifierDirs) {
    -  return verifierDirs.reduce(function(constructors, verifierDir) {
    -    if(verifierDir) {
    -      fs.readdirSync(verifierDir).each(function(file) {
    -        var v = require(path.resolve('.', verifierDir + "/" + file));
    -        constructors[v.name] = v;
    -      });
    -    }
    -    return constructors;
    -  }, {});
    -}
    -
    -module.exports = JspVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_parser_tag_file_parser.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_parser_tag_file_parser.js.html deleted file mode 100644 index a5d8beea9..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_parser_tag_file_parser.js.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - lib\parser\tag_file_parser.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\parser\tag_file_parser.js

    - -
    -
    -'use strict';
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , path = require('path');
    -
    -/**
    - * tagファイルのattribute定義情報のリストを取得し、返却する。
    - *
    - * attribute定義情報は、以下の属性値を格納したオブジェクトとなっており、すべてStringとして格納されている。
    - * なお、属性値が定義されていない場合には、undefinedとして格納される。
    - *
    - * * name
    - * * description
    - * * required
    - * * type
    - * * rtexprvalue
    - * * fragment
    - *
    - * @param body tagファイルの内容
    - * @returns {Array} tagファイルに定義されている属性のリスト
    - */
    -function TagFileParser_parse(body) {
    -  var parsed = [];
    -  $('<div>').append(body).find('\\%\\@attribute').each(function(idx, node) {
    -    var $node = $(node);
    -    parsed.push({
    -      name: $node.attr('name'),
    -      description: $node.attr('description'),
    -      required: $node.attr('required'),
    -      type: $node.attr('type'),
    -      rtexprvalue: $node.attr('rtexprvalue'),
    -      fragment: $node.attr('fragment')
    -    });
    -  });
    -  return parsed;
    -}
    -
    -module.exports = {
    -  parse: TagFileParser_parse
    -};
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verification_error.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verification_error.js.html deleted file mode 100644 index 196f715de..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verification_error.js.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - lib\verification_error.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verification_error.js

    - -
    -
    -"use strict";
    -
    -/**
    - * 検証結果を表すクラス。
    - *
    - * @class VerificationError
    - */
    -VerificationError.prototype = {
    -  constructor: VerificationError,
    -
    -  /**
    -   * 検証を実施したクラス名。
    -   *
    -   * @property verifier
    -   * @type String
    -   */
    -  verifier: null,
    -
    -  /**
    -   * エラー内容を表すメッセージ。
    -   *
    -   * @property message
    -   * @type String
    -   */
    -  message: null,
    -
    -  /**
    -   * このエラーが発生したファイルのパス
    -   *
    -   * @property path
    -   * @type String
    -   */
    -  path: null,
    -
    -  /**
    -   * 検証エラーとなったノードの内容
    -   *
    -   * @property path
    -   * @type String
    -   */
    -  contents: null
    -};
    -
    -/**
    - * 検証結果を生成する。
    - *
    - * @constructor
    - * @method VerificationError
    - * @param {String} verifier 検証を実施したクラス名。
    - * @param {String} message エラー内容を表すメッセージ
    - * @param {String} path 検証エラーとなったファイルのパス
    - * @param {String} contents 検証エラーとなったノードの内容
    - */
    -function VerificationError(verifier, message, path, contents) {
    -  this.verifier = verifier;
    -  this.message = message;
    -  this.path = path;
    -  this.contents = contents;
    -}
    -
    -module.exports = VerificationError;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_regexp_based_verifier.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_regexp_based_verifier.js.html deleted file mode 100644 index 015baf605..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_regexp_based_verifier.js.html +++ /dev/null @@ -1,222 +0,0 @@ - - - - - lib\verifiers\regexp_based_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\regexp_based_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var VerificationError = require('../verification_error');
    -
    -/**
    - * 正規表現検証クラス
    - * =====================================================================
    - *
    - * JSPファイル内に、指定された正規表現にマッチする文字列が存在(する|しない)かどうかを検証する。
    - *
    - * 正規表現は以下のように指定する。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "required": {
    - * >       "ファイル内で必ず一箇所以上は一致しなくてはいけない正規表現": "コメント"
    - * >     },
    - * >     "forbidden": {
    - * >       "ファイル内で一致する箇所が存在してはいけない正規表現": "コメント"
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     "required": {
    - * >     },
    - * >     "forbidden": {
    - * >         "/>": "自己終了エレメントを利用すると、その要素以降の記述内容が描画されなくなるため禁止。"
    - * >     }
    - *
    - * @class RegexpBasedVerifier
    - */
    -RegexpBasedVerifier.prototype = {
    -  constructor: RegexpBasedVerifier,
    -  verify: RegexpBasedVerifier_verify,
    -
    -  /**
    -   * マッチしなくてはいけない正規表現のリスト
    -   *
    -   * @property required
    -   * @type Array
    -   * @default []
    -   */
    -  required: [],
    -
    -  /**
    -   * マッチしてはいけない正規表現のリスト
    -   *
    -   * @property forbidden
    -   * @type Array
    -   * @default []
    -   */
    -  forbidden: []
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method RegexpBasedVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **required** 必ずマッチしなくてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。
    - *    * **forbidden** マッチしてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。
    - */
    -function RegexpBasedVerifier(config) {
    -  this.required = Object.extended(config['required']).keys();
    -  this.forbidden = Object.extended(config['forbidden']).keys();
    -}
    -
    -/**
    - * JSPファイル内に、 required に指定されている正規表現にマッチする文字列が存在すること、
    - * および、forbiddenに指定されている正規表現にマッチする文字列が存在しないことを検証する。
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function RegexpBasedVerifier_verify(jsp, path) {
    -  var self = this
    -    , lines = Object.extended(jsp.split('\n'))
    -    , result;
    -  result = this.required.reduce(function(res, r) {
    -    if (!jsp.match(new RegExp(r))) {
    -      res.push(new VerificationError('RegexpBasedVerifier', r + ' にマッチする文字列が検出されませんでした。', path, ''));
    -    }
    -    return res;
    -  }, []);
    -  result = lines.reduce(function(res, line, n) {
    -    self.forbidden.each(function(r) {
    -      if (line.match(new RegExp(r))) {
    -        res.push(new VerificationError('RegexpBasedVerifier', (n + 1) + '行目に ' + r + ' にマッチする文字列が検出されました。', path, line));
    -      }
    -    });
    -    return res;
    -  }, result);
    -  return result;
    -}
    -
    -module.exports = RegexpBasedVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_selector_based_verifier.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_selector_based_verifier.js.html deleted file mode 100644 index 335d3f048..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_selector_based_verifier.js.html +++ /dev/null @@ -1,225 +0,0 @@ - - - - - lib\verifiers\selector_based_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\selector_based_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , VerificationError = require('../verification_error');
    -
    -/**
    - * DOM検証クラス
    - * =====================================================================
    - *
    - * JSPファイル内に、指定されたセレクタにマッチするノードが存在(する|しない)かどうかを検証する。
    - *
    - * セレクタは以下のように指定する。なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。
    - * 使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。
    - *
    - * また、field:textなどのウィジェットをセレクタで指定する場合には、"field\\\\:text"と、":"をエスケープして記載する必要があることに注意。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "required": {
    - * >       "ファイル内に必ず一箇所以上はマッチするノードが存在しなくてはいけないセレクタ": "コメント"
    - * >     },
    - * >     "forbidden": {
    - * >       "ファイル内で一致する箇所が存在してはいけないセレクタ": "コメント"
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     "required": {
    - * >     },
    - * >     "forbidden": {
    - * >       "table:not([listSearchInfoName])": "テーブルにはlistSearchInfoNameがないと結果件数が表示されないため、listSearchInfoNameを強制。",
    - * >       "table:not([id])" : "テーブルを複数表示する場合にIDが必須となるため、テーブルにはIDを強制。"
    - * >     }
    - *
    - * @class SelectorBasedVerifier
    - */
    -SelectorBasedVerifier.prototype = {
    -  constructor: SelectorBasedVerifier,
    -  verify: SelectorBasedVerifier_verify,
    -
    -  /**
    -   * マッチしなくてはいけないセレクタのリスト
    -   *
    -   * @param required
    -   * @type Array
    -   * @default []
    -   */
    -  required: [],
    -
    -  /**
    -   * マッチしてはいけないセレクタのリスト
    -   *
    -   * @property forbidden
    -   * @type Array
    -   * @default []
    -   */
    -  forbidden: []
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method SelectorBasedVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **required** 必ずマッチしなくてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。
    - *    * **forbidden** マッチしてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。
    - */
    -function SelectorBasedVerifier(config) {
    -  this.required = Object.extended(config['required']).keys();
    -  this.forbidden = Object.extended(config['forbidden']).keys();
    -}
    -
    -/**
    - * JSPファイル内に、 required に指定されているセレクタにマッチするノードが存在すること、
    - * および、forbiddenに指定されているセレクタにマッチするノードが存在しないことを検証する。
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function SelectorBasedVerifier_verify(jsp, path) {
    -  var $jsp = $('<div>').append($(jsp))
    -    , result;
    -  result = this.required.reduce(function(res, r) {
    -    if ($jsp.find(r).length === 0) {
    -      res.push(new VerificationError('SelectorBasedVerifier', r + ' にマッチするタグが検出されませんでした。', path, ''));
    -    }
    -    return res;
    -  }, []);
    -  result = this.forbidden.reduce(function(res, r) {
    -    var found = $jsp.find(r);
    -    if (found.length !== 0) {
    -      res.push(new VerificationError('SelectorBasedVerifier', r + ' にマッチするタグが検出されました。', path, $('<div>').append(found).html()));
    -    }
    -    return res;
    -  }, result);
    -  return result;
    -}
    -
    -module.exports = SelectorBasedVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_attribute_verifier.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_attribute_verifier.js.html deleted file mode 100644 index fd7474078..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_attribute_verifier.js.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - lib\verifiers\tag_attribute_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\tag_attribute_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , reader = require('../fileutil/tag_file_reader')
    -  , VerificationError = require('../verification_error');
    -
    -/**
    - * タグ属性検証クラス
    - * =====================================================================
    - *
    - * タグに設定されている属性が、tagファイルで実際に定義されている属性かどうかを検証する。
    - *
    - * 下記の設定で、指定されているディレクトリに格納されているタグファイルに対してのみ、属性値の検証が行われる。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "directory": "タグファイルが格納されているディレクトリのパス",
    - * >     "encoding": "タグファイルのエンコーディング"
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     "directory": "C:\\nablarch\\tutorial\\main\\web\\WEB-INF\\tags\\widget",
    - * >     "encoding": "utf-8"
    - *
    - * @class TagAttributeVerifier
    - */
    -TagAttributeVerifier.prototype = {
    -  constructor: TagAttributeVerifier,
    -  verify: TagAttributeVerifier_verify,
    -
    -  /**
    -   * 指定されたディレクトリから読み込んだタグファイルの定義情報
    -   *
    -   * @property definitions
    -   * @type Array
    -   * @default []
    -   */
    -  definitions: null
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method TagAttributeVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **directory** タグファイルが格納されているディレクトリのパス
    - *    * **encoding** タグファイルのエンコーディング
    - */
    -function TagAttributeVerifier(config) {
    -  this.definitions = reader.loadAllTags(config['directory'], config['encoding']);
    -}
    -
    -/**
    - * JSPファイルで使用されているタグの属性が、実際に定義されているものであることを検証する。
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function TagAttributeVerifier_verify(jsp, path) {
    -  var $nodes = $('<div>').append(jsp).find('*')
    -    , self = this
    -    , results = [];
    -
    -  $nodes.each(function(res, node) {
    -    var def = self.definitions.find(function(def) {
    -      return def.name.toLowerCase() === node.name.toLowerCase();
    -    });
    -    if (def) {
    -      var $node = $(node);
    -      Object.each($node.attr(), (function(attr) {
    -        var found = def.attributes.find(function(d) {
    -          return d.name.toLowerCase() === attr.toLowerCase();
    -        });
    -        if (!found) {
    -          results.push(new VerificationError('TagAttributeVerifier', '<' + node.name + '> タグには、' + attr + '属性は定義されていません。定義されているのは、' + dumpAllAttributes(def) + 'です。',  path, $('<div>').append($node).html()))
    -        }
    -      }))
    -    }
    -  });
    -
    -  return results;
    -}
    -
    -function dumpAllAttributes(t) {
    -  return t.attributes.map(function(a){
    -    return a.name;
    -  }).join(', ')
    -}
    -
    -module.exports = TagAttributeVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_usage_verifier.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_usage_verifier.js.html deleted file mode 100644 index 069b84fca..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_usage_verifier.js.html +++ /dev/null @@ -1,238 +0,0 @@ - - - - - lib\verifiers\tag_usage_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\tag_usage_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , VerificationError = require('../verification_error');
    -
    -/**
    - * 使用可能タグ検証クラス
    - * =====================================================================
    - *
    - * JSPファイル内で使用されているタグが、使用可能なタグであるかどうかを検証する。
    - *
    - * 使用可能なタグは、タグ名に完全一致する正規表現として設定ファイルに以下のように記載する。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "allowed_tags": {
    - * >       "許可するタグ名に完全一致する正規表現": "コメント"
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     {
    - * >       "verifiers": {
    - * >         "TagUsageVerifier": {
    - * >           "allowed_tags": {
    - * >             "n:form": ""
    - * >             , "n:set": ""
    - * >             , "n:write": ""
    - * >             , "n:ConfirmationPage": ""
    - * >             , "n:forConfirmationPage": ""
    - * >             , "n:forInputPage": ""
    - * >             , "n:param": ""
    - * >             , "t:page_template": "業務画面のテンプレート"
    - * >             , "t:errorpage_template": "エラー画面のテンプレート"
    - * >             , "box:.*": ""
    - * >             , "button:.*": "ボタンウィジェット"
    - * >             , "field:.*": "入力フォーム部品"
    - * >             , "link:.*": "リンクウィジェット"
    - * >             , "tab:.*": "タブウィジェット"
    - * >             , "table:.*": "テーブルウィジェット"
    - * >             , "c:if": ""
    - * >             , "jsp:attribute": ""
    - * >             , "%@": "JSPディレクティブ"
    - * >             , "%--": "JSPコメント"
    - * >           }
    - * >         }
    - * >       }
    - * >     }
    - *
    - * @class TagUsageVerifier
    - */
    -TagUsageVerifier.prototype = {
    -  constructor: TagUsageVerifier,
    -  verify: TagUsageVerifier_verify,
    -
    -  /**
    -   * 使用可能とするタグ名にマッチする正規表現
    -   *
    -   * @property allowed_tags
    -   * @type Array
    -   * @default []
    -   */
    -  allowed_tags: []
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method TagUsageVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **allowed_tags** 使用可能とするタグ名にマッチする正規表現をキーに持ち、コメントを値としてもつオブジェクト。
    - */
    -function TagUsageVerifier(config) {
    -  this.allowed_tags = this.allowed_tags.concat(Object.extended(config['allowed_tags']).keys());
    -}
    -
    -/**
    - * JSPファイルで使用されている全てのタグが、 `allowed_tags` に指定されているかどうかを検証する。
    - *
    - * なお、以下のUI開発基盤を利用したローカル表示用のマジックコメントは解析対象にならない。
    - *
    - *     <!-- <%/* --> <script src="js/devtool.js"></script><meta charset="utf-8"><body> <!-- * /%> -->
    - *
    - * また、JSPディレクティブについては、下記の置換を行ってディレクティブ名を正規化している。
    - *
    - *     replace(/<%@\s+([a-zA-Z]+)\s/mg, '<%@$1 ')
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function TagUsageVerifier_verify(jsp, path) {
    -  var $tags = $('<div>').append($(jsp)).find('*')
    -    , self = this
    -    , result = []
    -    , message;
    -
    -  $tags.each(function(idx, node) {
    -    var tag = node.name
    -      , isNotAllowed = self.allowed_tags.none(function(allowed) {
    -        return tag.match(new RegExp('^' + allowed + '$', "i"))
    -      });
    -
    -    if (isNotAllowed) {
    -      message = '<{tag}> タグは、JSPファイルでは利用しないでください。'.assign({"tag": tag});
    -      result.push(new VerificationError('TagUsageVerifier', message, path, $('<div>').append(node).html()))
    -    }
    -  });
    -
    -  return result;
    -}
    -
    -module.exports = TagUsageVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_wrapping_tag_verifier.js.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_wrapping_tag_verifier.js.html deleted file mode 100644 index a68f59afd..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_wrapping_tag_verifier.js.html +++ /dev/null @@ -1,250 +0,0 @@ - - - - - lib\verifiers\wrapping_tag_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\wrapping_tag_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , VerificationError = require('../verification_error');
    -
    -/**
    - * 親タグ検証クラス
    - * =====================================================================
    - *
    - * 正規表現で指定されたタグ名にマッチするタグの親タグに、指定されているタグが存在(する|しない)かどうかを検証する。
    - *
    - * 検証対象とするタグおよびその親タグは以下のように設定する。
    - *
    - * childは __正規表現__ で指定するが、parentは __セレクタ__ で指定することに注意。
    - * このため、parentにn:formなどの":"を含むタグを指定したい場合には、 "n\\\\:form" のようにエスケープする必要がある。
    - *
    - * なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。
    - * 使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "required": {
    - * >       "コメント": {
    - * >         "child": "検証対象とするタグにマッチする正規表現",
    - * >         "parent": "childに指定したタグの親に存在しなくてはいけないタグにマッチするセレクタ"
    - * >       }
    - * >     },
    - * >     "forbidden": {
    - * >       "コメント": {
    - * >         "child": "検証対象とするタグにマッチする正規表現",
    - * >         "parent": "childに指定したタグの親に存在してはいけないタグにマッチするセレクタ"
    - * >       }
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     "required": {
    - * >       "tableウィジェットは、n:formで囲む必要がある。": {
    - * >         "child": "table:.*",
    - * >         "parent": "n\\:form"
    - * >       },
    - * >       "buttonウィジェットは、n:formで囲む必要がある。": {
    - * >         "child": "button:.*",
    - * >         "parent": "n\\:form"
    - * >       },
    - * >      "設計書ビューで画面項目定義に表示されるウィジェットは、spec:layoutで囲む必要がある。": {
    - * >        "child": "(table|field|column):.+",
    - * >        "parent": "spec\\:layout"
    - * >      }
    - * >    },
    - * >    "forbidden": {
    - * >    }
    - *
    - * @class WrappingTagVerifier
    - */
    -WrappingTagVerifier.prototype = {
    -  constructor: WrappingTagVerifier,
    -  verify: WrappingTagVerifier_verify,
    -
    -  /**
    -   * 満たさなくてはいけない親子関係のリスト
    -   *
    -   * @param required
    -   * @type Array
    -   * @default []
    -   */
    -  required: [],
    -
    -  /**
    -   * 満たしてはいけない親子関係のリスト
    -   *
    -   * @property forbidden
    -   * @type Array
    -   * @default []
    -   */
    -  forbidden: []
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method WrappingTagVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **directory** タグファイルが格納されているディレクトリのパス
    - *    * **encoding** タグファイルのエンコーディング
    - */
    -function WrappingTagVerifier(config) {
    -  this.required = Object.extended(config['required']).values();
    -  this.forbidden = Object.extended(config['forbidden']).values();
    -}
    -
    -/**
    - * タグの親子関係を検証する。
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function WrappingTagVerifier_verify(jsp, path) {
    -  var $tags = $('<div>').append($(jsp)).find('*')
    -    , self = this
    -    , result = [];
    -  $tags.each(function(idx, t) {
    -    var $t = $(t);
    -    result = self.required.reduce(function(res, r) {
    -      var c = r["child"]
    -        , p = r["parent"];
    -      if(t.name.match(new RegExp('^' + c + '$', 'i')) && $t.parents(p).length === 0) {
    -        res.push(new VerificationError('WrappingTagVerifier', '<' + t.name + '> の親タグに <' + p + '> にマッチするタグが検出されませんでした。', path, $('<div>').append($t).html()));
    -      }
    -      return res
    -    }, result);
    -    result = self.forbidden.reduce(function(res, r) {
    -      var c = r["child"]
    -        , p = r["parent"];
    -      if(t.name.match(new RegExp('^' + c + '$', 'i')) && $t.parents(r["parent"]).length !== 0) {
    -        res.push(new VerificationError('WrappingTagVerifier', '<' + t.name + '> の親タグに <' + p + '> にマッチするタグが検出されました。', path, $('<div>').append($t).html()));
    -      }
    -      return res
    -    }, result)
    -  });
    -  return result;
    -}
    -
    -module.exports = WrappingTagVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/index.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/index.html deleted file mode 100644 index 87d7ba5a9..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/index.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -
    -
    -

    - Browse to a module or class using the sidebar to view its API documentation. -

    - -

    Keyboard Shortcuts

    - -
      -
    • Press s to focus the API search box.

    • - -
    • Use Up and Down to select classes, modules, and search results.

    • - -
    • With the API search box or sidebar focused, use -Left or -Right to switch sidebar tabs.

    • - -
    • With the API search box or sidebar focused, use Ctrl+Left and Ctrl+Right to switch sidebar tabs.

    • -
    -
    -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/modules/index.html b/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/modules/index.html deleted file mode 100644 index 487fe15b2..000000000 --- a/en/development_tools/toolbox/_static/jsp_verifier/yuidoc/modules/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - Redirector - - - - Click here to redirect - - diff --git a/en/development_tools/toolbox/index.rst b/en/development_tools/toolbox/index.rst index 1846f5ece..ec3f672c7 100644 --- a/en/development_tools/toolbox/index.rst +++ b/en/development_tools/toolbox/index.rst @@ -9,7 +9,6 @@ Useful Tools When Developing Applications JspStaticAnalysis/index.rst SqlExecutor/SqlExecutor - JspVerifier/JspVerifier .. _nablarchToolBoxPage: @@ -28,8 +27,6 @@ This document introduces tools that are useful for developing applications. |br| - A tool that specifies the syntax and tags that are allowed to be used in JSP, and checks that only the allowed syntax and tags are used. * - :doc:`SqlExecutor/SqlExecutor` - A tool for executing SQL statements interactively. - * - :doc:`JspVerifier/JspVerifier` - - A tool to verify the business screen JSP. .. |br| raw:: html diff --git a/en/development_tools/ui_dev/index.rst b/en/development_tools/ui_dev/index.rst deleted file mode 100644 index 61fdff684..000000000 --- a/en/development_tools/ui_dev/index.rst +++ /dev/null @@ -1,9 +0,0 @@ -===================================================== -Front-end UI development platform for advanced users -===================================================== - -Only japanese edition - -See `Front-end UI development platform for advanced users(Japanese Page) `_ - - diff --git a/en/examples/01/0101_PBKDF2PasswordEncryptor.rst b/en/examples/01/0101_PBKDF2PasswordEncryptor.rst deleted file mode 100644 index 2baf9f6ab..000000000 --- a/en/examples/01/0101_PBKDF2PasswordEncryptor.rst +++ /dev/null @@ -1,178 +0,0 @@ -.. _authentication_pbkdf2: - -==================================================== -Sample Password Encryption Function Using PBKDF2 -==================================================== - -This is an implementation sample that encrypts the password using `PBKDF2 `_. - - ------------------ -Delivery package ------------------ - -The sample is provided in the following package. - - *please.change.me.*\ **common.authentication.encrypt** - - ------------- -Summary ------------- - -An sample implementation of the function to encrypt passwords with salt addition and stretching using PBKDF2 is provided. - -This sample is intended to be used in :doc:`../index`. - - ------------- -Request ------------- - -Implemented -======================== - -* Even if the same password is being used by multiple users, different values can be used for the encrypted password. -* The string length before encryption can be set to a sufficient length for preventing password cracking using rainbow tables. -* By changing the time required to calculate the encrypted password once, it is possible to take measures against password cracking using brute force. - - -Not yet considered -======================== - -* A random salt can be added to each user. -* The salt can be kept in a secure storage outside the database. - - -------------------------------------------------------- -Details of the password encryption function -------------------------------------------------------- - -This function uses one of the key derivation functions `PBKDF2 `_ to encrypt the password. -The encrypted password is returned as a Base64-encoded character string. - -This function uses a byte sequence that concatenates "system common fixed value" and "user ID" as a salt, -so that even if different users use the same password, the encrypted password will be different. - -The `fixedSalt` property described below can be used to provide salt of sufficient length as a measure against rainbow table, -and the `iterationCount` property to provide a stretching count as a measure against brute-force. - -See :ref:`pbkdf2IterationCount` for reference information on how to examine stretching counts. - - ------------------- -How to configure ------------------- - -This section describes how to configure the function. - -.. code-block:: xml - - - - - - - - - - - - - - - -A description of the property is given below. - -===================== =================================================================================================================================================================================== -property name Settings -===================== =================================================================================================================================================================================== -fixedSalt (required) A fixed string is used for the salt that is common to all systems. The actual salt is a sequence of bytes that concatenates this string with the user ID. - - .. important:: - - This configuration value is related to the encryption strength of the password. If the value is set too short, - it leaves the user vulnerable to password decryption using the rainbow table. - - Since salt concatenates the user ID, ensure that the byte sequence concatenating this string and the user ID is **more than 20 bytes** [#]_ in length. - (It is recommended to secure 20 bytes with just this configuration alone.) - -iterationCount Number of times password encryption is stretched.Default value is 3966. [#]_ - - Considering the fact that several thousand to tens of thousands of stretching times are generally recommended and load on the system, - the number of times stretching is preformed should be set so that the calculation time is about 10000 times longer than the calculation time with a hash function such as SHA-256. - - :ref:`pbkdf2IterationCount` provides reference information on how to consider stretching counts. - - .. tip:: - - The stretching process is a process with high CPU load. - - Specify ``1`` for systems that are not complaint with PCI DSS and special security is not required. - -keyLength The length of the encrypted password (bits). Default value is 256. - - Since the hash function used internally is SHA-256, set the value to 256 or more. - - The length of the string generated by using this function is the length obtained - by encoding the byte string of the length specified here with Base64. -===================== =================================================================================================================================================================================== - -.. [#] - - As of January 2014, since it has been confirmed that a rainbow table supporting a string of 14 characters or more has been sold, 20 characters or more is recommended here. - Before using it in a project, be sure to check the latest information and set a salt length that can be assumed to be sufficient. - -.. [#] - - Although the number 3966 has no particular meaning, the value is a stretching number that serves the purpose, and it has been configured considering that the threat of password decryption - can be mitigated by configuring a value that is not easy to guess, rather than specifying a convenient number that is easy to guess. - - -.. _pbkdf2IterationCount: - -Configuration value of stretching count -======================================== - -How the default value of the stretching count was arrived at in this sample implementation is described. - -As a basic policy, the number of stretching times is determined based on the following information. - -1. How many seconds does it take to complete a brute-force operation if the password is hashed without SHA-256 stretching? -2. Determine the target value for the time required to complete the brute force, - and how many times of the time taken to hash a password once is needed to achieve the target value in the case of SHA-256. - -The following information has been collected for examination in the above policy. - -**Number of hash value calculations per second** - In November 2013, a server capable of computing 100,000,000,000,000 times of SHA-256 per second was available for sale. - -**Password strength** - When a password of "more than 8 mixed alphanumeric characters" is enforced, it takes 62^8 calculations to complete a brute force attack. - -**Target time to complete a brute force attack** - 1 year - -From the above information, the following is obtained if we calculate how many times the calculation time of one hash value in PBKDF2 -should be set as the calculation time for one hash value in SHA-256. - -1. Time to complete password brute force process without SHA-256/stretching:: - - (62^8) / (10^11) ~= 2183 (s) - -2. To extend the above time to the target value, how many times should the time to calculate the hash value of the password be in the case of SHA-256?: - - (60*60*24*365) / ((62^8) / (10^11)) ~= 14444 - -From this value, it is clear that the `iterationCount` should be set so that the calculation time for PBKDF2 is about 15,000 times or more than that for SHA-256. - -According to the measurement results on the development PC (CPU: Intel(R) Core(TM) i7-4770 3.40GHz), the calculation time of PBKDF2 is about 15,000 times longer than SHA-256, -and it can take one year to complete a brute-force attack if the iteration count is about 3500 to 4000 times. - -In the measurement with the above PC, the calculation time of once for PBKDF2 when iterationCount was set to 4000 was about 15 ms to 20 ms. -This value is adopted as the default value because it is not considered to be a bottleneck for login processes -where a response time of about one second is assumed. - -While the PBKDF2 encryption process is being executed, this process almost occupies the CPU. -Verify whether the time that the encryption process occupies the CPU in the actual operating environment is within the allowable time. diff --git a/en/examples/01/_images/Authentication_ClassDiagram.png b/en/examples/01/_images/Authentication_ClassDiagram.png deleted file mode 100644 index 676d1ab22..000000000 Binary files a/en/examples/01/_images/Authentication_ClassDiagram.png and /dev/null differ diff --git a/en/examples/01/_images/Authentication_ClassDiagram.pu b/en/examples/01/_images/Authentication_ClassDiagram.pu deleted file mode 100644 index ce6d85bbf..000000000 --- a/en/examples/01/_images/Authentication_ClassDiagram.pu +++ /dev/null @@ -1,59 +0,0 @@ -@startuml - -skinparam classAttributeIconSize 0 - -skinparam class { - BackgroundColor<> Gray -} - -interface PasswordEncryptor { - {abstract} encrypt(saltSeed: String, password: String): String -} - -class PBKDF2PasswordEncryptor implements PasswordEncryptor - -class SystemAccount { - + getUserId(): Integer - + getLoginId(): Integer - + getUserPassword(): String - + isUserIdLocked(): boolean - + getPasswordExpirationDate(): Date - + getFailedCount(): Short - + getEffectiveDateFrom(): Date - + getEffectiveDateTo(): Date - + getLastLoginDateTime(): Date - + getVersion(): Long -} - -class RuntimeException <> - -class AuthenticationException extends RuntimeException -class UserIdLockedException extends AuthenticationException -class PasswordExpiredException extends AuthenticationException -class AuthenticationFailedException extends AuthenticationException - -interface PasswordAuthenticator { - {abstract} authenticate(userId: String, password: String): void -} - -class SystemAccountAuthenticator implements PasswordAuthenticator - -class AuthenticationUtil { - {static} + encryptPassword(userId: String, password: String): String - {static} + authenticate(userId: String, password: String): void -} - -class UniversalDao <> -class SystemTimeUtil <> - -AuthenticationUtil ..> PasswordEncryptor : <> -AuthenticationUtil ..> PasswordAuthenticator : <> - -SystemAccountAuthenticator ..> SystemAccount : <> -SystemAccountAuthenticator ..> PasswordEncryptor: <> -SystemAccountAuthenticator ..> UniversalDao : <> -SystemAccountAuthenticator ..> SystemTimeUtil : <> - -UniversalDao ..> SystemAccount: <> - -@enduml \ No newline at end of file diff --git a/en/examples/01/index.rst b/en/examples/01/index.rst deleted file mode 100644 index 1769f6471..000000000 --- a/en/examples/01/index.rst +++ /dev/null @@ -1,317 +0,0 @@ -.. _authentication: - -==================================================== -Sample Password Encryption Function Using Database -==================================================== - -This is an implementation sample that performs authentication process using account information (user ID, password) stored in the database. - -.. toctree:: - :hidden: - - 0101_PBKDF2PasswordEncryptor - -`Source code `_ - - -------------------- -Delivery package -------------------- - -The sample is provided in the following package. - - *please.change.me.*\ **common.authentication** - - ------------- -Summary ------------- -Provide an implementation sample of the function to perform user authentication (authentication by user ID and password) in web application. - -This sample is intended to be used in a business process [#auth_action]_ that executes login process. - -.. tip:: - - The Nablarch implementation project should modify and use this sample implementation to meet the requirements. - -.. [#auth_action] - - This function does not provide the business process that executes the login process. - Create a login process according to the requirements in the Nablarch implementation project. - -Since this function uses `PBKDF2 `_ by default to encrypt passwords, -it is necessary to set the number of stretches and salts for password encryption in each project. - -For more information on configuration, see :doc:`0101_PBKDF2PasswordEncryptor` . - - - ------------- -Structure ------------- -Shows the sample structure. - - -Class diagram -======================== -.. image:: ./_images/Authentication_ClassDiagram.png - :scale: 75 - -Responsibilities of each class -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Interface definition -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -===================== =============================================================== -Interface Name Summary -===================== =============================================================== -PasswordAuthenticator An interface that authenticates users. - -PasswordEncryptor An interface that encrypts a password. - -===================== =============================================================== - -Class definition -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -\a) PasswordAuthenticator implementation class - - =============================== ====================================================================================================== - Class name Summary - =============================== ====================================================================================================== - SystemAccountAuthenticator Class that performs password authentication for the account information stored in the database. - =============================== ====================================================================================================== - - -\b) PasswordEncryptor implementation class - - =============================== ========================================================================== - Class name Summary - =============================== ========================================================================== - PBKDF2PasswordEncryptor Class that performs password encryption using PBKDF2. - =============================== ========================================================================== - -\c) Utility class - - =============================== ================================================================================ - Class name Summary - =============================== ================================================================================ - AuthenticationUtil Utility to get PasswordAuthenticator and PasswordEncryptor - from system repository and perform user authentication and password encryption. - =============================== ================================================================================ - -\d) Entity class - - =============================== ========================================================================== - Class name Summary - =============================== ========================================================================== - SystemAccount Class retains user account information and to which Universal DAO search results are mapped. - =============================== ========================================================================== - -.. tip:: - - In the Nablarch implementation project, entity classes are automatically generated using :ref:`gsp-dba-maven-plugin `. - This sample includes an entity class automatically generated according to the definition described in :ref:`system-account-table-definition` for operation confirmation. - When implementing in a project, instead of using the entity class of this sample, modify to use the entity class automatically generated in each project. - -\e) Exception class - - =============================== ======================================================================================================== - Class name Summary - =============================== ======================================================================================================== - AuthenticationException Exception that occurs when user authentication fails. - - Base class of exception related to authentication process. - Create an exception class that inherits from this class according to the authentication architecture. - This class and its subclasses retain information necessary for the creation of - a message to be presented to a user, but do not create a message. - - AuthenticationFailedException Exception that occurs when authentication fails due to mismatch of account information. - - This function memorizes the user ID of the target user. - - PasswordExpiredException Exception that occurs when password has expired while authenticating user. - - Retains the user ID, password expiration date, and business date used for checking of the target user. - - UserIdLockedException Exception that occurs when user ID is locked during user authentication. - - Stores the user ID of the target user and the number of authentication failures that lock the user ID. - =============================== ======================================================================================================== - -.. _system-account-table-definition: - -Table definition -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The definition of the account table used in this sample is shown below. -When importing this sample into the implementation project, modify the SQL file and source code according to the table definition of the implementation project. - -**SYSTEM_ACCOUNT** - -The system account table stores the account information. - - ============================ ========================= ==================== ===================================== - Logical name Physical name Java type Limitations - ============================ ========================= ==================== ===================================== - User ID USER_ID java.lang.Integer Primary key - - Login ID LOGIN_ID java.lang.String - - Password PASSWORD java.lang.String - - User ID lock USER_ID_LOCKED boolean true when locked - - Password expiration date PASSWORD_EXPIRATION_DATE java.util.Date - - Authentication failed count FAILED_COUNT java.lang.Short - - Effective date (From) EFFECTIVE_DATE_FROM java.util.Date - - Effective date (To) EFFECTIVE_DATE_TO java.util.Date - - Last login date and time LAST_LOGIN_DATE_TIME java.util.Date - ============================ ========================= ==================== ===================================== - -.. tip:: - - Only the attributes required for this sample are listed in the above table definition. - In the Nablarch implementation project, the table design should be done to meet the requirements by adding necessary user attributes to this table and creating user information tables, etc. that are tied to this table on a one-to-one basis. - - - ------------------------------------------------------------------------- -How to Use ------------------------------------------------------------------------- -This section describes how to use password authentication using the account information stored in the database. - -The features of password authentication are shown below. - -* Check the effective date (From/To) of account information during authentication. -* Check the expiration date of the password during authentication. -* Lock the user ID when the specified number of authentications fail consecutively. If the authentication succeeds before the specified number of times is reached, the number of failures is reset. -* Authenticate using an encrypted password. This feature provides password encryption using PBKDF2 by default. -* Record the date and time of the last login. The system date and time is used to update the last login date and time only if the authentication is successful. - -In addition, PasswordAuthenticator and PasswordEncryptor are supposed to be obtained from Nablarch system repository and used. -Because components from the system repository should not be retrieved and used at each point in the business function, this function provides AuthenticationUtil, -which wraps the retrieval of components from the system repository and the password authentication and password encryption processes. - -AuthenticationUtil should be used for the login and user registration functions implemented in the project. - - -.. _passwordAuth-settings-label: - -How to Use SystemAccountAuthenticator -============================================================================================= -This section describes how to use the SystemAccountAuthenticator. - - -.. code-block:: xml - - - - - - - - - - - - - - - - - - - -A description of the property is given below. - -===================================================================== =================================================================================================================================================================================================================================================================== -property name Settings -===================================================================== =================================================================================================================================================================================================================================================================== -passwordEncryptor (required) A PasswordEncryptor used to encrypt the password. - - Specify the component name, which was configured by referring to :doc:`0101_PBKDF2PasswordEncryptor` , to ref. - -dbManager (required) SimpleDbTransactionManager, which provides transaction control to the database. - - Specify an instance of nablarch.core.db.transaction.SimpleDbTransactionManager class. - - .. important:: - SystemAccountAuthenticator transaction control shall be configured to use a separate transaction from the individual application so that the transaction control of the PasswordAuthenticator does not affect the processing of the individual application. - In the configuration example, since the name "authenticator" is specified for dbTransactionName, configure the transaction settings such that the same name is not used in individual applications. - -failedCountToLock Number of authentication failures to lock the user ID. - - If this is not specified, it is set to 0 and the user ID lock function is not used. -===================================================================== =================================================================================================================================================================================================================================================================== - - -How to Use AuthenticaionUtil -============================================================================================= - -This section describes how to use AuthenticaionUtil. - -AuthenticationUtil implements the following utility methods. -Since the component name to acquire a component from the system repository needs to be combined with the component name registered in :ref:`passwordAuth-settings-label` , modify the source code if the component name is different from the above configuration example. - -================== ============================================================================================== -Method -================== ============================================================================================== -encryptPassword Obtain PasswordEncryptor from the system repository with the component name passwordEncryptor - and call PasswordEncryptor#encrypt(String, String). - -authenticate Obtain the PasswordAuthenticator from the system repository with the component name authenticator - and call PasswordAuthenticator#authenticate(String, String). -================== ============================================================================================== - - -Usage example of AuthenticaionUtil -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The following is an example of the implementation of the authentication process using this sample. - -In the implementation project, implement the authentication process that meets the requirements by referring to this implementation example. - -.. code-block:: java - - // Obtain the user ID and password to authenticate in advance. - // String userId = ・・・; - // Strign password = ・・・; - - try { - - AuthenticationUtil.authenticate(userId, password); - - } catch (AuthenticationFailedException e) { - - // Process when authentication fails - - } catch (UserIdLockedException e) { - - // Process when a user ID is locked - - } catch (PasswordExpiredException e) { - - // Process when password has expired - - } - -.. tip:: - - In the above example, the processing is divided finely according to the status of the authentication error. - However, if it is not necessary to divide the processing finely, the processing may be performed by supplementing the upper exception class as follows. - - .. code-block:: java - - try { - - AuthenticationUtil.authenticate(userId, password); - - } catch (AuthenticationException e) { - // Exception handling - } - diff --git a/en/examples/03/_images/ListSearchResult_Example.jpg b/en/examples/03/_images/ListSearchResult_Example.jpg deleted file mode 100644 index be875bd80..000000000 Binary files a/en/examples/03/_images/ListSearchResult_Example.jpg and /dev/null differ diff --git a/en/examples/03/_images/ListSearchResult_PagingAfter.jpg b/en/examples/03/_images/ListSearchResult_PagingAfter.jpg deleted file mode 100644 index 2f3cf8282..000000000 Binary files a/en/examples/03/_images/ListSearchResult_PagingAfter.jpg and /dev/null differ diff --git a/en/examples/03/_images/ListSearchResult_PagingAfter2.jpg b/en/examples/03/_images/ListSearchResult_PagingAfter2.jpg deleted file mode 100644 index 4e72686aa..000000000 Binary files a/en/examples/03/_images/ListSearchResult_PagingAfter2.jpg and /dev/null differ diff --git a/en/examples/03/_images/ListSearchResult_PagingBefore.jpg b/en/examples/03/_images/ListSearchResult_PagingBefore.jpg deleted file mode 100644 index 0c1e31a0d..000000000 Binary files a/en/examples/03/_images/ListSearchResult_PagingBefore.jpg and /dev/null differ diff --git a/en/examples/03/_images/ListSearchResult_PagingFull.jpg b/en/examples/03/_images/ListSearchResult_PagingFull.jpg deleted file mode 100644 index b095ed0f6..000000000 Binary files a/en/examples/03/_images/ListSearchResult_PagingFull.jpg and /dev/null differ diff --git a/en/examples/03/_images/ListSearchResult_PagingTableFull.jpg b/en/examples/03/_images/ListSearchResult_PagingTableFull.jpg deleted file mode 100644 index c086379d4..000000000 Binary files a/en/examples/03/_images/ListSearchResult_PagingTableFull.jpg and /dev/null differ diff --git a/en/examples/03/_images/ListSearchResult_Structure.png b/en/examples/03/_images/ListSearchResult_Structure.png deleted file mode 100644 index 8a500a052..000000000 Binary files a/en/examples/03/_images/ListSearchResult_Structure.png and /dev/null differ diff --git a/en/examples/03/_images/ListSearchResult_TableFull.jpg b/en/examples/03/_images/ListSearchResult_TableFull.jpg deleted file mode 100644 index a0a68eb1b..000000000 Binary files a/en/examples/03/_images/ListSearchResult_TableFull.jpg and /dev/null differ diff --git a/en/examples/03/_images/ListSearchResult_TableStatus.jpg b/en/examples/03/_images/ListSearchResult_TableStatus.jpg deleted file mode 100644 index 887ab27b7..000000000 Binary files a/en/examples/03/_images/ListSearchResult_TableStatus.jpg and /dev/null differ diff --git a/en/examples/03/_images/figures.xlsx b/en/examples/03/_images/figures.xlsx deleted file mode 100644 index 83c5e3bd1..000000000 Binary files a/en/examples/03/_images/figures.xlsx and /dev/null differ diff --git a/en/examples/03/index.rst b/en/examples/03/index.rst deleted file mode 100644 index aeb39aecd..000000000 --- a/en/examples/03/index.rst +++ /dev/null @@ -1,644 +0,0 @@ -.. _list_search_result: - -====================================================== -Display a List of Search Results -====================================================== - -This sample is an implementation sample of the tag file that displays a list of search results. - -`Source code `_ - ------------------ -Delivery package ------------------ - -The sample is provided in the following package. - - *resources/META-INF/tags/*\ **listSearchResult** - - ------------- -Summary ------------- -An implementation sample of the tag file that displays a list of search results is provided in this section. -The tag file provides the following functions together with the search function by the :ref:`universal_dao`. - -* Function for displaying the number of search results -* Function for displaying the search results by the specified number of results (hereinafter referred to as paging) - -An example of the output on the list screen is shown below. - -.. image:: ./_images/ListSearchResult_Example.jpg - :scale: 80 - -.. _ListSearchResult_Structure: - -| - ------------- -Structure ------------- -Shows the sample structure. - -Class diagram -======================== - -The application programmer can implement paging without implementing the details since the classes provided -by the framework and the tag files provided by the sample perform the processing required for paging. - -.. image:: ./_images/ListSearchResult_Structure.png - :scale: 60 - -Responsibilities of the classes and tag files provided by the framework -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -\a) Framework - - =============================== ===================================================================================================================================== - Class name Summary - =============================== ===================================================================================================================================== - UniversalDao Provides general-purpose DAO functionality. Please refer to :ref:`universal_dao` for basic usage. - ListSearchInfo Abstract class that holds information for list search. - Pagination A concrete class that inherits from ListSearchInfo. - EntityList A holding class for the result list returned from a UniversalDao. - =============================== ===================================================================================================================================== - -\b) Tag file - - =============================== ========================================================================== - Tag name Summary - =============================== ========================================================================== - listSearchResult Tag that displays the list of search results. - listSearchPaging Tag that outputs paging. - listSearchSubmit Tag that outputs the paging submit element. - table Tag that outputs a table. - =============================== ========================================================================== - -| - -.. _ListSearchResult_UniversalDao: - ---------------------------- -UniversalDao class ---------------------------- - -:java:extdoc:`UniversalDao ` class has an API that returns multiple search results as an EntityList. -See :ref:`universal_dao-paging` when using the paging feature. - -.. _ListSearchResult_ListSearchInfo: - ----------------------------- -ListSearchInfo class ----------------------------- - -ListSearchInfo class is an abstract class that holds list search information. -Fields and accessor methods such as number of pages for pagination and number of items matching search conditions are defined in this class. -See :java:extdoc:`nablarch.core.db.support.ListSearchInfo` for details. - -.. _ListSearchResult_Pagination: - ----------------------------- -Pagination class ----------------------------- -Pagination class inherits ListSearchInfo and is used to refer to pagination information. - - -.. _ListSearchResult_EntityList: - ----------------------------- -EntityList class ----------------------------- -EntityList class is the holding class of result list returned from UniversalDao. -Inherits the java.util.ArrayList and has an instance of the Pagination class in the field. - -.. _ListSearchResult_ListSearchResultTag: - ---------------------------- -listSearchResult tag ---------------------------- -The :ref:`ListSearchResult_Tag` tag displays the list of search results. -The screen elements output by the listSearchResult tag are shown below. - - -.. image:: ./_images/ListSearchResult_PagingTableFull.jpg - :scale: 80 - - -Main attributes of the listSearchResult tag -============================================= -The main attributes of the listSearchResult tag are shown below. For more information on all the attributes, see :ref:`ListSearchResult_Tag`. - -If the search result specified by the resultSetName attribute does not exist in the request scope, the listSearchResult tag will not output anything. -This corresponds to the case where the initial display of the search screen does not output anything. - -====================================== =========================================================================================================================== -Attribute Description -====================================== =========================================================================================================================== -Overall ------------------------------------------------------------------------------------------------------------------------------------------------------------------- -listSearchInfoName Name used to acquire ListSearchInfo from the Request scope. |br| - If not specified, "Number of search results" and "Paging" are not displayed. |br| - Do not specify when displaying only a list such as batch deletion confirmation screen. -searchFormName Name used to acquire search form from the Request scope. |br| - The search form holds search criteria and page numbers for paging. -Search result list ------------------------------------------------------------------------------------------------------------------------------------------------------------------- -useResultCount Whether to display the number of search results. |br| - Default is true. -Paging ------------------------------------------------------------------------------------------------------------------------------------------------------------------- -usePaging Whether to display paging. |br| - Default is true. |br| -searchUri URI to use for the paging submit element. |br| - Must be specified when paging is displayed. -Search result ------------------------------------------------------------------------------------------------------------------------------------------------------------------- -resultSetName (required) The name to use when retrieving :java:extdoc:`Universal DAO search results ` from the request scope. The search results also include the number of pages for pagination and the number of items that match the search conditions. |br| -headerRowFragment JSP fragment of the header row. For more information on the header row, see :ref:`ListSearchResult_TableElement` |br| -bodyRowFragment JSP fragment for the body row. For information on the body row, see :ref:`ListSearchResult_TableElement` -====================================== =========================================================================================================================== - -.. _ListSearchResult_ResultCountElement: - -Search result list -===================================== -The number of search results is displayed when true (default is true) is specified in the useResultCount attribute and the search results exist in the request scope. -By default, the number of search results is output in the following format. - -.. code-block:: jsp - - Search results <%-- resultCount property of pagination --%>Record - -To change the default format, specify the JSP fragment in the resultCountFragment attribute. -An example of specifying the resultCountFragment attribute is shown below. - -.. code-block:: jsp - - - - <%-- Specify the JSP fragment in the resultCountFragment attribute. --%> - - [Search results page] - - - <%-- Other attributes are omitted. --%> - - - -The format for the number of search results after the specification mentioned above is as follows. - -.. code-block:: jsp - - [Search results <%-- resultCount property of pagination --%> page] - -.. _ListSearchResult_PagingElement: - -Paging -===================================== -Paging is displayed when the usePaging attribute is specified as true (the default is true). - -When using the paging function, implement so that the form specified by searchFormName receives the page number with the name pageNumber. -Examples are shown below. - -.. code-block:: java - - public class ProjectSearchForm { - - @Required - @Domain("pageNumber") - private String pageNumber; - - public String getPageNumber(){ - return this.pageNumber; - } - - public String getPageNumber(){ - return this.pageNumber; - } - - public void setPageNumber(String pageNumber){ - this.pageNumber = pageNumber; - } - - // Omit other attributes. - } - -The paging screen elements are shown below. -Paging consists of the current page number and the submit elements for moving the page. - -| - -.. image:: ./_images/ListSearchResult_PagingFull.jpg - :scale: 80 - -| - -The entire paging is displayed when the number of search results is 1 or more. -Assuming that the entire paging is displayed, the paging screen elements are as shown below. - -====================================== ============================================================================================================================================== -Paging screen element Description -====================================== ============================================================================================================================================== -Current page number The current page number is displayed when true is specified in the useCurrentPageNumber attribute. -First, Previous, Next, Last If it is possible to transition from the current page number to the page indicated by each screen element, it will be displayed in a state where it can be submitted. - If transition is not possible, a link is displayed as a label. -Page number All page numbers (1..n) are displayed only when the total number of pages is 2 or more. -====================================== ============================================================================================================================================== - -The typical attributes that can be specified by the paging screen elements are as follows. -For more information on all the attributes, see :ref:`ListSearchResult_Tag`. - -* Whether or not each screen element can be used -* Label for each screen element (such as first, previous, next, last) -* Current page number that is changed by the JSP fragment -* Page numbers that cannot be changed because they use the page number for the label - - -**Search conditions when paging** - -Search conditions for paging can be realized by constructing a URI with search conditions set as parameters and passing it to the searchUri attribute. -An example of specifying a project name as a search condition is shown below. - -.. code-block:: jsp - - <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> - <%@ taglib prefix="app" tagdir="/WEB-INF/tags/listSearchResult" %> - - <%-- Register the URI that has the search condition used to display the current search result as a parameter in the page scope as a variable. - This variable is used as URI for paging of tag. --%> - - <%-- Set the project name obtained from the search form. --%> - - - - <%-- Pass it to the searchUri attribute. --%> - - - -| - -**What to do when search results are reduced when using paging** - -This section describes what to do when the search results are reduced due to other user operations -while switching the search result page with each paging submit element. - -This framework performs a search based on the specified page number and displays each paging screen element. -The following is an example of the paging operation when the number of search results is reduced. - -As a prerequisite, the number of acquired search results (number displayed per page) is 20 results. - -First, assume that a search is performed and the search results are 44 results. Below is the paging display after the third page is selected. - -| - -.. image:: ./_images/ListSearchResult_PagingBefore.jpg - :scale: 100 - -| - -Next, a description of the paging display and the display contents when "Previous" is selected with the number of search results reduced to 10 will be described. -Each paging screen element is displayed as a search result for the second page. - -| - -.. image:: ./_images/ListSearchResult_PagingAfter.jpg - :scale: 100 - -| - -====================================== =========================================================================================================================================== -Paging screen element Description of the contents displayed -====================================== =========================================================================================================================================== -Current page number Since the second page has been specified and the search results are 20 results or less, it becomes page 2/1 (2 of 1). -First, Previous Since there are currently 10 search results on the second page, it is possible to move to the previous page which is displayed as a link. -Next, Last Since there are currently 10 search results on the second page, it is not possible to move to the next page which is displayed as a label -Page number The page number is not displayed since there are 10 search results and the total number of pages is 1. -====================================== =========================================================================================================================================== - -Since the current page number and the submit element correspond to each other, it is possible to move to the search results page -by selecting the submit element without it becoming inoperable. -(Of course, if you perform a search again from the search form, the search results will be from the first page.) - -The paging display after selecting "Previous" is shown next. The correspondence between the current page number and the total number of pages returns to normal. - -| - -.. image:: ./_images/ListSearchResult_PagingAfter2.jpg - :scale: 90 - -| - -.. _ListSearchResult_TableElement: - -Search result -===================================== -The screen elements of the search result are shown below. -The search result consists of a header row that displays column headings, and a body row that displays row data. - -.. image:: ./_images/ListSearchResult_TableFull.jpg - :scale: 80 - -The search results are always displayed when they are in the request scope. -When the search result is 0, only the header row is displayed. - -The header row and body row are specified in the headerRowFragment attribute and bodyRowFragment attributes in the JSP fragment. -The JSP fragment in the body row is called and evaluated in the search result loop (c:forEach tag of JSTL). -Hence, the following attributes are provided to access the row data (var attribute of the c:forEach tag) and status (status attribute of the c:forEach tag) -in the JSP fragment of the body row. - -====================================== ==================================================================================================================================== -Attribute Description -====================================== ==================================================================================================================================== -varRowName Variable name used when referring to row data (var attribute of the c:forEach tag) in the body row fragment. |br| - Default is "row". |br| -varStatusName Variable name used when referring to the status (status attribute of the c:forEach tag) in the body row fragment. |br| - Default is "status". - - .. tip:: - - When accessing the status using the n:write tag, an error occurs and the value cannot be obtained - since the access method differs between the n:write tag and the EL expression. - This error can be avoided by using the n:set tag to access the status.\ - An example of its use is shown below. - - .. code-block:: jsp - - - - -varCountName Variable name used when referring to the count property of the status (status attribute of the c:forEach tag). |br| - Default is "count". |br| -varRowCountName Variable name used when referring to the search result count (start position of search result acquisition + status count). |br| - Default is "rowCount". -====================================== ==================================================================================================================================== - -In addition, the following attributes are provided in the body row that specify the class attribute for changing the background color of every other row. - -====================================== ============================================================================================== -Attribute Description -====================================== ============================================================================================== -varOddEvenName Variable name used when referring to the class attribute of the body row. |br| - This variable name is used to change the value of the class attribute every other row. |br| - Default is "oddEvenCss". |br| -oddValue The class attribute to use for odd lines of body. |br| - Default is "nablarch_odd". |br| -evenValue The class attribute to use for even lines of body. |br| - Default is "nablarch_even". -====================================== ============================================================================================== - -An example of project search specifications is shown below. The tag file prefix should be app. - -.. code-block:: jsp - - - - <%-- JSP fragment specification for header line. --%> - - - Project id - Project name - Project type - Start date - End date - - - - <%-- Body line JSP fragment specification. --%> - - - - <%-- Access the row data using the default variable name "row". --%> - - - - - - - - - - - - - - - - - - - - - - - - -The search results after the above specifications are shown below. - - -.. image:: ./_images/ListSearchResult_TableStatus.jpg - :scale: 80 - - -.. _ListSearchResult_Customize: - ------------------------------------------------------------------------------------- -How to import a sample implementation (tag file) into the business application ------------------------------------------------------------------------------------- - -Place the listSearchResult package in the business application as follows.\ - - Copy from - *META-INF/tags/*\ **listSearchResult** - - Copy to - /WEB-INF/tags directory of the business application - - -.. _ListSearchResult_TagReference: - ---------------------------------------------------------- -Tag Reference ---------------------------------------------------------- - -.. _ListSearchResult_Tag: - -listSearchResult tag -===================================== -The listSearchResult tag displays a list of search results. -The attributes for each screen element are shown below. - -| - -.. image:: ./_images/ListSearchResult_PagingTableFull.jpg - :scale: 80 - -| - -====================================== ================================================================================================================================= -Attribute Description -====================================== ================================================================================================================================= -Overall ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -listSearchResultWrapperCss Class attribute of the div tag that wraps the entire table with paging (number of search results, paging, search results). |br| - Default is "nablarch_listSearchResultWrapper". -listSearchInfoName Name used to acquire search form from the Request scope. |br| - Search forms hold page numbers for search criteria and paging. - Do not specify when displaying only a list such as batch deletion confirmation screen. -Search result list ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -useResultCount Whether to display the number of search results. |br| - Default is true. -resultCountCss Class attribute of the div tag that wraps the number of search results. |br| - Default is "nablarch_resultCount". -resultCountFragment JSP fragment that outputs the number of search results. |br| - Default is "search results record". -Paging ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -usePaging Whether to display paging. |br| - Default is true. -pagingPosition The display position of paging. |br| - Specify one of the following. |br| - top(top only) |br| - bottom(bottom only) |br| - both(both) |br| - none(no display) |br| - Default is top. -pagingCss Class attribute of the div tag that wraps the entire paging submit elements (previous, next, etc.). |br| - Default is "nablarch_paging" -searchUri URI to use for the paging submit element. |br| - Must be specified when paging is displayed. -====================================== ================================================================================================================================= - -| - -.. image:: ./_images/ListSearchResult_PagingTableFull.jpg - :scale: 80 - -| - -====================================== ============================================================================================================================================================ -Attribute Description -====================================== ============================================================================================================================================================ -Current page number ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -useCurrentPageNumber Whether to use the current page number. |br| - Default is true. -currentPageNumberCss Class attribute of the div tag that wraps the current page number. |br| - Default is "nablarch_currentPageNumber". -currentPageNumberFragment JSP fragment that outputs the current page number. |br| - Default is "[/page]". -First ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -useFirstSubmit Whether to use the submit to move to the first page. |br| - Default is false. -firstSubmitCss Class attribute of the div tag that wraps the submit for moving to the first page. |br| - Default is "nablarch_firstSubmit". -firstSubmitLabel Label used by the submit for moving to the first page. |br| - Default is "First". -firstSubmitName Name attribute of the tag used by the submit for moving to the first page. |br| - Default is "firstSubmit". |br| - Outputs by adding the suffix (upper side is "_top" and lower side is "_bottom") indicating the display position of paging. |br| - For example, if the default and display position is upper, it will be "firstSubmit_top". -Previous ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -usePrevSubmit Whether to use the submit to move to the previous page. |br| - Default is true. -prevSubmitCss Class attribute of the div tag that wraps the submit for moving to the previous page. |br| - Default is "nablarch_prevSubmit". -prevSubmitLabel Label used by the submit for moving to the previous page. |br| - Default is "Previous". -prevSubmitName Name attribute of the tag used by the submit for moving to the previous page. |br| - Default is "prevSubmit". |br| - Outputs by adding the suffix (upper side is "_top" and lower side is "_bottom") indicating the display position of paging. |br| - For example, if the default and display position is upper, it will be "firstSubmit_top". -Page number (label is not specified since the page number is used as a label) ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -usePageNumberSubmit Whether to use the submit to moves to the page specified by the page number. |br| - Default is false. -pageNumberSubmitCss Class attribute of the div tag that wraps the submit for moving to the page specified by the page number. |br| - Default is "nablarch_pageNumberSubmit". -pageNumberSubmitName Name attribute of the tag used by the submit for moving to the page specified by the page number. |br| - Default is "pageNumberSubmit". |br| - Outputs by adding the page number and suffix (upper side is "_top" and lower side is "_bottom") indicating the display position of paging. |br| - For example, if the default and display position is upper and the page number is 3, it will be " pageNumberSubmit3_top". -Next ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -useNextSubmit Whether to use the submit to move to the next page. |br| - Default is true. -nextSubmitCss Class attribute of the div tag that wraps the submit for moving to the next page. |br| - Default is "nablarch_nextSubmit". -nextSubmitLabel Label used by the submit for moving to the next page. |br| - Default is "Next". -nextSubmitName Name attribute of the tag used by the submit for moving to the next page. |br| - Default is "nextSubmit". |br| - Outputs by adding the suffix (upper side is "_top" and lower side is "_bottom") indicating the display position of paging. |br| - For example, if the default and display position is upper, it will be "nextSubmit_top". -List ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -useLastSubmit Whether to use the submit to move to the last page. |br| - Default is false. -lastSubmitCss Class attribute of the div tag that wraps the submit for moving to the last page. |br| - Default is "nablarch_lastSubmit". -lastSubmitLabel Label used by the submit for moving to the last page. |br| - Default is "List". -lastSubmitName Name attribute of the tag used by the submit for moving to the last page. |br| - Default is "lastSubmit". |br| - Outputs by adding the suffix (upper side is "_top" and lower side is "_bottom") indicating the display position of paging. |br| - For example, if the default and display position is upper, it will be "lastSubmit_top". -====================================== ============================================================================================================================================================ - -| - -.. image:: ./_images/ListSearchResult_PagingTableFull.jpg - :scale: 80 - -| - -====================================== ================================================================================================================================= -Attribute Description -====================================== ================================================================================================================================= -Search result ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -showResult Whether to display search results. |br| - Default is true. -resultSetName(required) The name to use when fetching :java:extdoc:`Universal DAO search results ` from the request scope. The search results also include the number of pages for pagination and the number of items that match the search conditions. -resultSetCss Class attribute of the search result table. |br| - Default is "nablarch_resultSet". -headerRowFragment JSP fragment of the header row. -bodyRowFragment JSP fragment for the body row. -varRowName Variable name used when referring to row data (var attribute of the c:forEach tag) in the body row fragment. |br| - Default is"row". -varStatusName Variable name used when referring to the status (status attribute of the c:forEach tag) in the body row fragment. |br| - Default is "status". - - .. tip:: - - When accessing the status using the n:write tag, an error occurs and the value cannot be obtained - since the access method differs between the n:write tag and the EL expression. - This error can be avoided by using the n:set tag to access the status.\ - An example of its use is shown below. - - .. code-block:: jsp - - - - -varCountName Variable name used when referring to the count property of the status (status attribute of the c:forEach tag). |br| - Default is "count". -varRowCountName Variable name used when referring to the search result count (start position of search result acquisition + status count). |br| - Default is "rowCount". -varOddEvenName Variable name used when referring to the class attribute of the body row. |br| - This variable name is used to change the value of the class attribute every other row. |br| - Default is "oddEvenCss". -oddValue The class attribute to use for odd lines of body. |br| - Default is "nablarch_odd". -evenValue The class attribute to use for even lines of body. |br| - Default is "nablarch_even". -====================================== ================================================================================================================================= - - -.. |br| raw:: html - -
    \ No newline at end of file diff --git a/en/examples/04/0401_ExtendedDataFormatter.rst b/en/examples/04/0401_ExtendedDataFormatter.rst deleted file mode 100644 index 87f1f45e0..000000000 --- a/en/examples/04/0401_ExtendedDataFormatter.rst +++ /dev/null @@ -1,203 +0,0 @@ -===================================== -Data Formatter Expansion -===================================== - -The specifications of the formatter functions provided in this sample are described. - -For an overview of the formatter functions and more information on basic general data formatting functions, see the description for general data formatting functions in the Nablarch Application Framework manual. - ----------------------------- -Summary ----------------------------- - -To use a different formatter from those provided by Nablarch (ex: Json format or Xml format), add a data formatter. - -In this sample, assume creating a formatter corresponding to the data format (application/x-www-form-urlencoded) that combines Key item=Value item with &, such as a HTTP POST parameter. - -Delivery package --------------------------------------------------------------------- - -The functions are provided in the below package. - - *please.change.me.* **core.dataformat** - - *please.change.me.* **core.dataformat.convertor** - - *please.change.me.* **test.core.file** - -.. _ExtendedFormatter_FormUrlEncodedFormatter: - - - -Structure of the FormUrlEncoded data formatter --------------------------------------------------------------------- - -The FormUrlEncoded data formatter handles the data used in application/x-www-form-urlencoded. -This data is expressed by connecting sets of names and values using the equal to sign and then linking them with the AND symbol (&), such as name1=value1 & name2=value2. -Multiple values can also be handled with the same key. - -Encode a URL in the value. -For keys, a URL cannot be encoded according to the format definition of general data formats, and special characters cannot be used for a key string. - -The following is a list of classes used in this function. - - .. list-table:: - :widths: 130 150 200 - :header-rows: 1 - - * - Package name - - Class name - - Summary - * - *please.change.me.* **core.dataformat** - - FormUrlEncodedDataFormatterFactory - - | Formatter factory class. - | In the sample implementation, the createFormatter (String fileType, String formatFilePath) method is overridden, and an instance of FormUrlEncodedDataRecordFormatter can be created. - * - *please.change.me.* **core.dataformat** - - FormUrlEncodedDataRecordFormatter - - | Formatter class. - | Parse and build the data used by application/x-www-form-urlencoded. - | The parameters in the sample implementation are output in the order of format definition during writing and not in the order of appearance during reading. - * - *please.change.me.* **core.dataformat.convertor** - - FormUrlEncodedDataConvertorFactory - - | Factory class for the data converter. - | Stores the correspondence table between the default converter name and converter implementation class. - * - *please.change.me.* **core.dataformat.convertor** - - FormUrlEncodedDataConvertorSetting - - | Class that stores the configuration information of the converter. - | Configures the correspondence table of the converter name and converter implementation class from the DI container. - * - *please.change.me.* **test.core.file** - - FormUrlEncodedTestDataConverter - - | Test data converter class. - | In the sample implementation, data configured with the Key=Value format for each item is analyzed as test data, and URL encoding is performed dynamically for the value in the Value section. - - ----------------------------- -How to Use ----------------------------- - -How to Use the FormUrlEncoded data formatter --------------------------------------------------------------------- - When using a formatter factory class created in the business application, the following configuration must be made. - - .. code-block:: xml - - - - -Description example of format definition file --------------------------------------------------------------------- - An example describing the format definition file corresponding to the sample source code is shown below. - - .. code-block:: bash - - # - # Directive definition section - # - file-type: "FormUrlEncoded" # Form URL encoded format file - text-encoding: "UTF-8" # Character encoding of the string type field - - # - # Data record definition section - # - [data] - 1 key1 X # Item 1 - 2 key2 X # Item 2 - - -Field type and field converter definition list --------------------------------------------------------------------- - This section describes the field types and field converters used in the FormUrlEncoded data formatter. - - **Field type** - - .. list-table:: - :widths: 130 150 200 - :header-rows: 1 - - * - Type identifier - - Java type - - Details - - * - X, N, XN, X9, SX9 - - String - - | The FormUrlEncoded data formatter reads and writes all fields as strings. - | Therefore, the operation does not change no matter what type of identifier is specified. - | Since there is no concept of field length, arguments are not required. - | To read and write Number type data (BigDecimal etc.), use the number/signed_number converter described below. - - Arguments are not required as none of the type identifiers have the concept of field length. - - **Field convertor** - - .. list-table:: - :widths: 70 100 350 - :header-rows: 1 - - * - Converter name - - Java type (before and after conversion) - - Details - - * - Literal value - - Object <-> Object - - | **During input:** (Nothing is to be done) - | **During output:** Outputs the specified literal value if the output value is not set. - | **Default implementation class:** nablarch.core.dataformat.convertor.value.DefaultValue - | **Argument:** No - - * - number - - String <-> BigDecimal - - | **During input:** After checking that the format of the input value is an unsigned number, converts the value to BigDecimal type and returns it. - | Returns null if the value entered is a null or empty character. - | **During output:** Converts the output value to a string, and then outputs after format checking that it is an unsigned numeric value. - | Outputs an empty character if the output value is null. - | **Default implementation class:** nablarch.core.dataformat.convertor.value.NumberString - | **Argument:** No - - * - signed_number - - String <-> BigDecimal - - | Except that signs are allowed, the specification is the same as **number** converter. - | **Default implementation class:** nablarch.core.dataformat.convertor.value.SignedNumberString - | **Argument:** No - - -When handling multiple values with the same key --------------------------------------------------------------------- - When the same key handles multiple values, data is stored in the String array format. - Multiplicity must be set in the format definition file. - For the definition method, see the general data formatting functions in the Nablarch Application Framework manual. - - -How to write test data --------------------------------------------------------------------- - - When using the FormUrlEncoded data formatter, the input data must be URL encoded. - However, writing URL-encoded data directly into an Excel file is not practical in terms of readability, maintainability and work efficiency. - Therefore, the test data converter is specified as shown in the following example. - - For test data converters, see How to use the automatic test framework in the Programming/Unit test guide. - - **Component configuration file** - - Add the following settings in the component configuration file on the test side. - - .. code-block:: xml - - - - - **Excel file** - - "FormUrlEncoded" is specified in the file-type as follows, and entered in the Key-Value format for each item as test data. - - .. image:: ./_images/test_data_example.png - - In this case, the test framework calls FormUrlEncodedTestDataConverter when the test data is read, - and the following data is input to the FormUrlEncoded data formatter as a result. - - .. code-block:: text - - kanjiName=%E6%BC%A2%E5%AD%97%E6%B0%8F%E5%90%8D&kanaName=%E3%82%AB%E3%83%8A%E3%82%B7%E3%83%A1%E3%82%A4&mailAddr=test%40anydomain.com - - - diff --git a/en/examples/04/0402_ExtendedFieldType.rst b/en/examples/04/0402_ExtendedFieldType.rst deleted file mode 100644 index f8b63a784..000000000 --- a/en/examples/04/0402_ExtendedFieldType.rst +++ /dev/null @@ -1,133 +0,0 @@ -====================================================== -Field Type Expansion in the Data Formatter Function -====================================================== - -The specifications of the formatter functions provided in this sample are described. - -For an overview of the formatter functions and more information on basic general data formatting functions, see the description for general data formatting functions in the Nablarch Application Framework manual. - ----------------------------- -Summary ----------------------------- - -When data linking double-byte characters of EBCDIC (CP930), a shift code may be added before and after the item. -However, when data linking with a host computer, -the shift code may not be added since it is assumed that the item starts in the shift out state even if it is a double-byte character. - -Thus, depending on the interface with the connection destination system, the shift code may or may not be added and each case must be handled. - -This sample provides a data type class for double-byte characters of EBCDIC (CP930) with a shift code, -and a data type class for double-byte characters of EBCDIC (CP930) without a shift code. - -Since it is assumed that the double-byte string data type (DoubleByteCharacterString) provided in Nablarch by default is used for input/output of the full-width characters (double-byte characters) field when the character code of the file is Shift_JIS or MS932, each project must expand when handling EBCDIC (CP930). - -(Whether a shift code is added or not depends on the JDK, -and CP930 used in the JDK must have a shift code added to double-byte characters.) - -Since the shift code is added and removed transparently when this data type is used, it is possible to absorb the difference mentioned above and convert it into a string or encode it into a byte sequence. - - - -Delivery package --------------------------------------------------------------------- - -The functions are provided in the below package. - - *please.change.me.* **core.dataformat.convertor.datatype** - - -Structure of field type --------------------------------------------------------------------- - -The sample is an assumption that corresponds to both the case where a 2-byte string item in a fixed length file in EBCDIC (CP930) is assigned a shift code and the case where it is not assigned. -Hence, the following field type classes are added. - -The following is a list of classes used in this function. - - .. list-table:: - :widths: 130 150 200 - :header-rows: 1 - - * - Package name - - Class name - - Summary - * - *please.change.me.* **core.dataformat.** **convertor.datatype** - - EbcdicDoubleByteCharacterString - - | Data type class for double-byte strings of EBCDIC (CP930). - | It is used for input/output of full-width character (double-byte character) field of fixed-length data format. - | It is implemented as a data type that **assumes the shift code** is used for the input/output byte data. - * - *please.change.me.* **core.dataformat.** **convertor.datatype** - - EbcdicNoShiftCodeDoubleByteCharacterString - - | Data type class for double-byte strings of EBCDIC (CP930). - | It is used for input/output of full-width character (double-byte character) field of fixed-length data format. - | It is implemented as a data type that **assumes the shift code** is not used for the input/output byte data. - - - -How to use the field type --------------------------------------------------------------------- - When using the data type classes that have been added, it must be configured as follows. - The data types "ESN" and "EN" have been added to the default configuration in the sample below. - - .. code-block:: xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Field type and field converter definition list --------------------------------------------------------------------- - This section describes the field types that have been added. - - **Field type** - - .. list-table:: - :widths: 130 150 200 - :header-rows: 1 - - * - Type identifier - - Java type - - Details - * - ESN - - String - - | Double-byte string (byte length = number of characters x 2 + 2 (shift code part)) - | This sample performs right trim and padding with full-width empty space by default. - | During input, the shift-out/shift-in codes are assumed to be added and converted to a string without anything being done, - | while during output, the shift-out/shift-in codes are added automatically. - | Sample implementation class: please.change.me.core.dataformat.converter.datatype.EbcdicDoubleByteCharacterString - | argument: Byte length (numerical value, specification required) - * - EN - - String - - | Double-byte string (byte length = number of characters x 2) - | This sample performs right trim and padding with full-width empty space by default. - | During input, the shift-out/shift-in codes are complemented internally and converted into a string, - | while during output, the shift-out/shift-in codes are not added. - | Sample implementation class: please.change.me.core.dataformat.converter.datatype.EbcdicNoShiftCodeDoubleByteCharacterString - | argument: Byte length (numerical value, specification required) diff --git a/en/examples/04/_images/test_data_example.png b/en/examples/04/_images/test_data_example.png deleted file mode 100644 index eaa3bbe64..000000000 Binary files a/en/examples/04/_images/test_data_example.png and /dev/null differ diff --git a/en/examples/04/index.rst b/en/examples/04/index.rst deleted file mode 100644 index 0247068fc..000000000 --- a/en/examples/04/index.rst +++ /dev/null @@ -1,18 +0,0 @@ -===================================== -Extended Formatter Functions -===================================== - -.. important:: - - This sample uses a Nablarch 1.4 compliant API. - - When combining with versions later than Nablarch 1.4 series, customize as necessary. - - -.. toctree:: - :maxdepth: 1 - - 0401_ExtendedDataFormatter - 0402_ExtendedFieldType - -`Source code `_ \ No newline at end of file diff --git a/en/examples/05/_images/05_DbFileManagementUtil.pptx b/en/examples/05/_images/05_DbFileManagementUtil.pptx deleted file mode 100644 index 700a61e3a..000000000 Binary files a/en/examples/05/_images/05_DbFileManagementUtil.pptx and /dev/null differ diff --git a/en/examples/05/_images/DbFileManagement_classdiagram.png b/en/examples/05/_images/DbFileManagement_classdiagram.png deleted file mode 100644 index 79decfcc3..000000000 Binary files a/en/examples/05/_images/DbFileManagement_classdiagram.png and /dev/null differ diff --git a/en/examples/05/_images/DbFileManagement_outline01.png b/en/examples/05/_images/DbFileManagement_outline01.png deleted file mode 100644 index acedf32bb..000000000 Binary files a/en/examples/05/_images/DbFileManagement_outline01.png and /dev/null differ diff --git a/en/examples/05/_images/DbFileManagement_outline02.png b/en/examples/05/_images/DbFileManagement_outline02.png deleted file mode 100644 index 7f38abe47..000000000 Binary files a/en/examples/05/_images/DbFileManagement_outline02.png and /dev/null differ diff --git a/en/examples/05/index.rst b/en/examples/05/index.rst deleted file mode 100644 index 1bfd90220..000000000 --- a/en/examples/05/index.rst +++ /dev/null @@ -1,247 +0,0 @@ -.. _DbFileManagement_result: - -================================================== -Sample File Management Function Using Database -================================================== - - ------------- -Summary ------------- - -Provides an implementation sample of the function to centrally manage the files used in business applications with DB. - -`Source code `_ - -The sample is intended for the following applications: - -- File upload and download from the screen. - -- Send and receive file transfers that handle a relatively small number of files. For example, dozens of files can be sent/received at a time. - -- Assumed that relatively small files are managed. For example, a small image such as an ID photo. - -.. tip:: - - This sample uses H2 as a DB. If the DB is not H2, use by modifying the implementation to match the DB used. - - - -The following is an example of the processing image during file upload and download. - - -When uploading files -======================== - -When the browser sends the file, the multipart request handler of Nablarch analyses the content and stores it in a temporary file. - -This sample stores that file to the DB in a binary format. - - -.. image:: ./_images/DbFileManagement_outline01.png - :width: 75% - -When downloading files -======================== - -If a file is requested but clicking on the download tag, the business class action must set Stream to StreamResponse. - -This sample gets the Stream from the DB. - -.. image:: ./_images/DbFileManagement_outline02.png - :width: 100% - - ----------------------- -Delivery package ----------------------- - -The sample is provided in the following package. - - *please.change.me.* **common.file.management** - - - ------------- -Functions ------------- - -Implemented -======================== -It has the following functions: - -* File registration function - - * The file is stored in binary column based on the file’s Stream. When storing, a unique file management ID is assigned (using Nablarch indexing function), and the file management ID is returned to the caller. - * Check that the file size does not exceed the column size. - - -* Function to delete files - - * Perform logical delete by rewriting the delete sign of records based on file management ID. - - -* Function to retrieve files - - * Retrieve and return the file from the file management table based on the file management ID. - - -Prerequisite specifications -============================== -* Delete is a specification to perform logical delete. At the time of operation, it is necessary to consider the clean up of records in logical delete status separately. - -* There are only minimal columns in the table definition. When other information is required, it is presumed that separate tables be created for each job. - -* To check contents of the file, only check that the file size does not exceed the column size. If there are other items to be checked, it is presumed that the checks shall be made by the caller. - -* There is no file update process. If a process equivalent to the file update process is to be performed, it is assumed that the file delete process and file record process are executed in order. - - ------------- -Structure ------------- -Shows the sample structure. - -Class diagram -======================== -.. image:: ./_images/DbFileManagement_classdiagram.png - :width: 100% - - -Responsibilities of each class -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Class definition -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - =============================== ========================================================================================================================== - Class name Summary - =============================== ========================================================================================================================== - FileManagementUtil Utility class that manages files stored in DB. The process is delegated to the class that implements FileManagement. - FileManagement Interface implementing the class that performs file management. - DbFileManagement Main part of the class that manages the files stored in the DB. - =============================== ========================================================================================================================== - -Table definition -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -**File management table (FILE_CONTROL)** - -The file management ID is stored along with the file in the file management table. - - ==================== ================== ============ =============== ========================================================================== - Logical name Physical name Definition Limitations Supplementary notes - ==================== ================== ============ =============== ========================================================================== - File management ID FILE_CONTROL_ID String Primary key Unique ID assigned by the system (Indexed by Nablarch’s index function) - - File contents FILE_OBJECT Binary - - Delete sign SAKUJO_SGN String Sign to denote if the file has been deleted or not. - - 0: Not deleted - - 1: Deleted - ==================== ================== ============ =============== ========================================================================== - - ---------------------------- -How to Use ---------------------------- - -How to use FileManagementUtil -============================================================================================= - -This section describes how to use the FileManagementUtil. - -.. _FileManagementUtil-settings-label: - -Usage example of FileManagementUtil (component configuration file) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -When using FileManagementUtil, define each component’s property in the component configuration file when needed. - -The components to be configured are shown below. - - ================================ ============================================================ - Component to be configured Logical name used in configuration example - ================================ ============================================================ - File management function body fileManagement - Numbering function sequenceIdGenerator - The formatter used for numbering dbFileManagementFormatter - ================================ ============================================================ - -The configuration example shown below. - -.. code-block:: xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Usage example of FileManagementUtil (When uploading files) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The usage of this sample is described assuming that file uploaded from the browser is stored in the DB. - - -.. code-block:: java - - public void doSaveFile(HttpRequest req, ExecutionContext ctx) { - // Acquire the part to be saved - PartInfo part = req.getPart("fileToSave").get(0); - - // If needed, file is validated for each job at this timing. - - // Register file to the DB - String fileId = FileManagementUtil.save(part); - - // The process using fileId is performed next if necessary. - } - - -Usage example of FileManagementUtil (When downloading files) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The usage of this sample is described assuming that the file is fetched from the DB and downloaded to the browser. - - -.. code-block:: java - - public HttpResponse doTempFile(HttpRequest req, ExecutionContext ctx) { - //File ID used for download - String fileId = "000000000000000001"; - - // Acquire a file from DB - Blob blob = FileManagementUtil.find(fileId); - - - // Configure the response information - StreamResponse res = new StreamResponse(blob); - res.setContentDisposition("temp.png"); - res.setContentType("image/png"); - return res; - } diff --git a/en/examples/08/_images/HtmlMail_ClassDiagram.png b/en/examples/08/_images/HtmlMail_ClassDiagram.png deleted file mode 100644 index 426fcad90..000000000 Binary files a/en/examples/08/_images/HtmlMail_ClassDiagram.png and /dev/null differ diff --git a/en/examples/08/_images/Mail_Pattern01.jpg b/en/examples/08/_images/Mail_Pattern01.jpg deleted file mode 100644 index 5d99543c2..000000000 Binary files a/en/examples/08/_images/Mail_Pattern01.jpg and /dev/null differ diff --git a/en/examples/08/_images/Mail_Pattern02.jpg b/en/examples/08/_images/Mail_Pattern02.jpg deleted file mode 100644 index 9c601f0b7..000000000 Binary files a/en/examples/08/_images/Mail_Pattern02.jpg and /dev/null differ diff --git a/en/examples/08/_images/Mail_Pattern03.jpg b/en/examples/08/_images/Mail_Pattern03.jpg deleted file mode 100644 index 023bb852e..000000000 Binary files a/en/examples/08/_images/Mail_Pattern03.jpg and /dev/null differ diff --git a/en/examples/08/_images/Mail_Pattern04.jpg b/en/examples/08/_images/Mail_Pattern04.jpg deleted file mode 100644 index 0af620b44..000000000 Binary files a/en/examples/08/_images/Mail_Pattern04.jpg and /dev/null differ diff --git a/en/examples/08/index.rst b/en/examples/08/index.rst deleted file mode 100644 index 68b293a56..000000000 --- a/en/examples/08/index.rst +++ /dev/null @@ -1,336 +0,0 @@ -===================================== -Sample of HTML Email Send Function -===================================== - -Summary -======== - -Provides the implementation sample of the function that sends the HTML email. - -`Source code `_ - -This function is a sample to send HTML mail using :ref:`mail` . -Since this function is a sample implementation, the source code (both production and test code) must be imported into the project when using it in an implementation project. - - -.. important:: - - This sample does not support the batch send of HTML emails such as campaign notifications. - Using specialized products is recommended when the following is applicable. - - * Sending mass emails such as campaign notifications and email newsletters. - * Measure the opening rate of the delivered email and effectiveness of click count. - * The client device (for example, whether it is a feature phone) is identified with the email address and emails sent are switched accordingly. - * Use emojis. - * Send a deco-mail. - * Supports content creation for HTML email, and the content is created by the customer. - (since there is no draw tool or content creation function in this sample, the developer has to create the content.) - -.. important:: - - Some clients do not display HTML email as expected, which may prevent the user from viewing the email. For this reason, do not use HTML email for emails where user notifications are important as a business requirement. - - -.. important:: - - **Layout of HTML email** - - Since HTML emails differ in display depending on the email client, establish an HTML email standard with mutual understanding or consent from the customer. - The following points should be considered with project in the HTML email standard. - - * The email client, device and OS to be tested. - * The scope of use of HTML tags, styles (CSS properties), etc. - * Extent to which fonts, color schemes, etc. are used. - * Width of content. (Even when only PC is supported, the size that can be confirmed by the preview function of the email client.) - - **Points to keep in mind when creating content** - - * Since some email clients ignore the contents of the tag, it is **generally not recommended** to remove styles in CSS files and - - - - Languages : CH -

    Javascript code prettifier

    - -

    Setup

    -
      -
    1. Download a distribution -
    2. Include the script and stylesheets in your document - (you will need to make sure the css and js file are on your server, and - adjust the paths in the script and link tag) -
      -<link href="prettify.css" type="text/css" rel="stylesheet" />
      -<script type="text/javascript" src="prettify.js"></script>
      -
    3. Add onload="prettyPrint()" to your - document's body tag. -
    4. Modify the stylesheet to get the coloring you prefer
    5. -
    - -

    Usage

    -

    Put code snippets in - <pre class="prettyprint">...</pre> - or <code class="prettyprint">...</code> - and it will automatically be pretty printed. - - - - -
    The original - Prettier -
    class Voila {
    -public:
    -  // Voila
    -  static const string VOILA = "Voila";
    -
    -  // will not interfere with embedded tags.
    -}
    - -
    class Voila {
    -public:
    -  // Voila
    -  static const string VOILA = "Voila";
    -
    -  // will not interfere with embedded tags.
    -}
    -
    - -

    FAQ

    -

    Which languages does it work for?

    -

    The comments in prettify.js are authoritative but the lexer - should work on a number of languages including C and friends, - Java, Python, Bash, SQL, HTML, XML, CSS, Javascript, and Makefiles. - It works passably on Ruby, PHP, VB, and Awk and a decent subset of Perl - and Ruby, but, because of commenting conventions, doesn't work on - Smalltalk, or CAML-like languages.

    - -

    LISPy languages are supported via an extension: - lang-lisp.js.

    -

    And similarly for - CSS, - Haskell, - Lua, - OCAML, SML, F#, - Visual Basic, - SQL, - Protocol Buffers, and - WikiText.. - -

    If you'd like to add an extension for your favorite language, please - look at src/lang-lisp.js and file an - issue including your language extension, and a testcase.

    - -

    How do I specify which language my code is in?

    -

    You don't need to specify the language since prettyprint() - will guess. You can specify a language by specifying the language extension - along with the prettyprint class like so:

    -
    <pre class="prettyprint lang-html">
    -  The lang-* class specifies the language file extensions.
    -  File extensions supported by default include
    -    "bsh", "c", "cc", "cpp", "cs", "csh", "cyc", "cv", "htm", "html",
    -    "java", "js", "m", "mxml", "perl", "pl", "pm", "py", "rb", "sh",
    -    "xhtml", "xml", "xsl".
    -</pre>
    - -

    It doesn't work on <obfuscated code sample>?

    -

    Yes. Prettifying obfuscated code is like putting lipstick on a pig - — i.e. outside the scope of this tool.

    - -

    Which browsers does it work with?

    -

    It's been tested with IE 6, Firefox 1.5 & 2, and Safari 2.0.4. - Look at the test page to see if it - works in your browser.

    - -

    What's changed?

    -

    See the change log

    - -

    Why doesn't Prettyprinting of strings work on WordPress?

    -

    Apparently wordpress does "smart quoting" which changes close quotes. - This causes end quotes to not match up with open quotes. -

    This breaks prettifying as well as copying and pasting of code samples. - See - WordPress's help center for info on how to stop smart quoting of code - snippets.

    - -

    How do I put line numbers in my code?

    -

    You can use the linenums class to turn on line - numbering. If your code doesn't start at line number 1, you can - add a colon and a line number to the end of that class as in - linenums:52. - -

    For example -

    <pre class="prettyprint linenums:4"
    ->// This is line 4.
    -foo();
    -bar();
    -baz();
    -boo();
    -far();
    -faz();
    -<pre>
    - produces -
    // This is line 4.
    -foo();
    -bar();
    -baz();
    -boo();
    -far();
    -faz();
    -
    - -

    How do I prevent a portion of markup from being marked as code?

    -

    You can use the nocode class to identify a span of markup - that is not code. -

    <pre class=prettyprint>
    -int x = foo();  /* This is a comment  <span class="nocode">This is not code</span>
    -  Continuation of comment */
    -int y = bar();
    -</pre>
    -produces -
    -int x = foo();  /* This is a comment  This is not code
    -  Continuation of comment */
    -int y = bar();
    -
    - -

    For a more complete example see the issue22 - testcase.

    - -

    I get an error message "a is not a function" or "opt_whenDone is not a function"

    -

    If you are calling prettyPrint via an event handler, wrap it in a function. - Instead of doing -

    - addEventListener('load', prettyPrint, false); -
    - wrap it in a closure like -
    - addEventListener('load', function (event) { prettyPrint() }, false); -
    - so that the browser does not pass an event object to prettyPrint which - will confuse it. - -


    - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.css b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.css deleted file mode 100644 index d44b3a228..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.css +++ /dev/null @@ -1 +0,0 @@ -.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} \ No newline at end of file diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.js b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.js deleted file mode 100644 index 4845d05d4..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/assets/vendor/prettify/prettify-min.js +++ /dev/null @@ -1 +0,0 @@ -window.PR_SHOULD_USE_CONTINUATION=true;var prettyPrintOne;var prettyPrint;(function(){var O=window;var j=["break,continue,do,else,for,if,return,while"];var v=[j,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var q=[v,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var m=[q,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var y=[q,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var T=[y,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,let,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where"];var s="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,throw,true,try,unless,until,when,while,yes";var x=[q,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var t="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var J=[j,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var g=[j,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var I=[j,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var B=[m,T,x,t+J,g,I];var f=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/;var D="str";var A="kwd";var k="com";var Q="typ";var H="lit";var M="pun";var G="pln";var n="tag";var F="dec";var K="src";var R="atn";var o="atv";var P="nocode";var N="(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function l(ab){var af=0;var U=false;var ae=false;for(var X=0,W=ab.length;X122)){if(!(am<65||ai>90)){ah.push([Math.max(65,ai)|32,Math.min(am,90)|32])}if(!(am<97||ai>122)){ah.push([Math.max(97,ai)&~32,Math.min(am,122)&~32])}}}}ah.sort(function(aw,av){return(aw[0]-av[0])||(av[1]-aw[1])});var ak=[];var aq=[];for(var at=0;atau[0]){if(au[1]+1>au[0]){ao.push("-")}ao.push(V(au[1]))}}ao.push("]");return ao.join("")}function Y(an){var al=an.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var aj=al.length;var ap=[];for(var am=0,ao=0;am=2&&ak==="["){al[am]=Z(ai)}else{if(ak!=="\\"){al[am]=ai.replace(/[a-zA-Z]/g,function(aq){var ar=aq.charCodeAt(0);return"["+String.fromCharCode(ar&~32,ar|32)+"]"})}}}}return al.join("")}var ac=[];for(var X=0,W=ab.length;X=0;){U[ae.charAt(ag)]=aa}}var ah=aa[1];var ac=""+ah;if(!ai.hasOwnProperty(ac)){aj.push(ah);ai[ac]=null}}aj.push(/[\0-\uffff]/);X=l(aj)})();var Z=V.length;var Y=function(aj){var ab=aj.sourceCode,aa=aj.basePos;var af=[aa,G];var ah=0;var ap=ab.match(X)||[];var al={};for(var ag=0,at=ap.length;ag=5&&"lang-"===ar.substring(0,5);if(ao&&!(ak&&typeof ak[1]==="string")){ao=false;ar=K}if(!ao){al[ai]=ar}}var ad=ah;ah+=ai.length;if(!ao){af.push(aa+ad,ar)}else{var an=ak[1];var am=ai.indexOf(an);var ae=am+an.length;if(ak[2]){ae=ai.length-ak[2].length;am=ae-an.length}var au=ar.substring(5);C(aa+ad,ai.substring(0,am),Y,af);C(aa+ad+am,an,r(au,an),af);C(aa+ad+ae,ai.substring(ae),Y,af)}}aj.decorations=af};return Y}function i(V){var Y=[],U=[];if(V.tripleQuotedStrings){Y.push([D,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(V.multiLineStrings){Y.push([D,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{Y.push([D,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(V.verbatimStrings){U.push([D,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var ab=V.hashComments;if(ab){if(V.cStyleComments){if(ab>1){Y.push([k,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{Y.push([k,/^#(?:(?:define|e(?:l|nd)if|else|error|ifn?def|include|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}U.push([D,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/,null])}else{Y.push([k,/^#[^\r\n]*/,null,"#"])}}if(V.cStyleComments){U.push([k,/^\/\/[^\r\n]*/,null]);U.push([k,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(V.regexLiterals){var aa=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");U.push(["lang-regex",new RegExp("^"+N+"("+aa+")")])}var X=V.types;if(X){U.push([Q,X])}var W=(""+V.keywords).replace(/^ | $/g,"");if(W.length){U.push([A,new RegExp("^(?:"+W.replace(/[\s,]+/g,"|")+")\\b"),null])}Y.push([G,/^\s+/,null," \r\n\t\xA0"]);var Z=/^.[^\s\w\.$@\'\"\`\/\\]*/;U.push([H,/^@[a-z_$][a-z_$@0-9]*/i,null],[Q,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[G,/^[a-z_$][a-z_$@0-9]*/i,null],[H,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[G,/^\\[\s\S]?/,null],[M,Z,null]);return h(Y,U)}var L=i({keywords:B,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function S(W,ah,aa){var V=/(?:^|\s)nocode(?:\s|$)/;var ac=/\r\n?|\n/;var ad=W.ownerDocument;var ag=ad.createElement("li");while(W.firstChild){ag.appendChild(W.firstChild)}var X=[ag];function af(am){switch(am.nodeType){case 1:if(V.test(am.className)){break}if("br"===am.nodeName){ae(am);if(am.parentNode){am.parentNode.removeChild(am)}}else{for(var ao=am.firstChild;ao;ao=ao.nextSibling){af(ao)}}break;case 3:case 4:if(aa){var an=am.nodeValue;var ak=an.match(ac);if(ak){var aj=an.substring(0,ak.index);am.nodeValue=aj;var ai=an.substring(ak.index+ak[0].length);if(ai){var al=am.parentNode;al.insertBefore(ad.createTextNode(ai),am.nextSibling)}ae(am);if(!aj){am.parentNode.removeChild(am)}}}break}}function ae(al){while(!al.nextSibling){al=al.parentNode;if(!al){return}}function aj(am,at){var ar=at?am.cloneNode(false):am;var ap=am.parentNode;if(ap){var aq=aj(ap,1);var ao=am.nextSibling;aq.appendChild(ar);for(var an=ao;an;an=ao){ao=an.nextSibling;aq.appendChild(an)}}return ar}var ai=aj(al.nextSibling,0);for(var ak;(ak=ai.parentNode)&&ak.nodeType===1;){ai=ak}X.push(ai)}for(var Z=0;Z=U){aj+=2}if(Y>=ar){ac+=2}}}finally{if(au){au.style.display=ak}}}var u={};function d(W,X){for(var U=X.length;--U>=0;){var V=X[U];if(!u.hasOwnProperty(V)){u[V]=W}else{if(O.console){console.warn("cannot override language handler %s",V)}}}}function r(V,U){if(!(V&&u.hasOwnProperty(V))){V=/^\s*]*(?:>|$)/],[k,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[M,/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);d(h([[G,/^[\s]+/,null," \t\r\n"],[o,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[n,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[R,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[M,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);d(h([],[[o,/^[\s\S]+/]]),["uq.val"]);d(i({keywords:m,hashComments:true,cStyleComments:true,types:f}),["c","cc","cpp","cxx","cyc","m"]);d(i({keywords:"null,true,false"}),["json"]);d(i({keywords:T,hashComments:true,cStyleComments:true,verbatimStrings:true,types:f}),["cs"]);d(i({keywords:y,cStyleComments:true}),["java"]);d(i({keywords:I,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);d(i({keywords:J,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);d(i({keywords:t,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);d(i({keywords:g,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);d(i({keywords:x,cStyleComments:true,regexLiterals:true}),["js"]);d(i({keywords:s,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);d(h([],[[D,/^[\s\S]+/]]),["regex"]);function e(X){var W=X.langExtension;try{var U=b(X.sourceNode,X.pre);var V=U.sourceCode;X.sourceCode=V;X.spans=U.spans;X.basePos=0;r(W,V)(X);E(X)}catch(Y){if(O.console){console.log(Y&&Y.stack?Y.stack:Y)}}}function z(Y,X,W){var U=document.createElement("pre");U.innerHTML=Y;if(W){S(U,W,true)}var V={langExtension:X,numberLines:W,sourceNode:U,pre:1};e(V);return U.innerHTML}function c(aj){function ab(al){return document.getElementsByTagName(al)}var ah=[ab("pre"),ab("code"),ab("xmp")];var V=[];for(var ae=0;ae]*(?:>|$)/],[PR.PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],[PR.PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-handlebars",/^]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i],[PR.PR_DECLARATION,/^{{[#^>/]?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{&?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{{>?\s*[\w.][^}]*}}}/],[PR.PR_COMMENT,/^{{![^}]*}}/]]),["handlebars","hbs"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]); \ No newline at end of file diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/JspVerifier.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/JspVerifier.html deleted file mode 100644 index 430a66810..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/JspVerifier.html +++ /dev/null @@ -1,470 +0,0 @@ - - - - - JspVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    JspVerifier Class

    -
    - - - - - -
    - Defined in: lib\jsp_verifier.js:8 -
    - - - - - -
    - - - -
    -

    JSPファイル検証クラス

    -

    設定情報をもとに、実際に検証を実施するクラス (Verifier) を生成し、それらのクラスでの検証結果を集約して返却する。

    -

    Verifier についての設定は、設定ファイルに以下のように記載する。

    -
    -

    設定フォーマット (JSON)

    -
    "verifiers": {
    -  "Verifierのコンストラクタ名": {
    -    // Verifier毎の設定情報
    -  }
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -

    例えば、 TagUsageVerifierSelectorBasedVerifier を利用する場合、以下のように記載する。

    -
    {
    -  "verifiers": {
    -    "TagUsageVerifier": {
    -      "allowed_tags": {
    -      }
    -    }
    -    "SelectorBasedVerifier": {
    -      "required": {
    -      }
    -      "forbidden": {
    -      }
    -    }
    -  }
    -}
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - - - - - -
    - - -
    -

    Methods

    - - -
    -

    JspVerifier

    - - -
    - (
      - -
    • - - configurations - -
    • - -
    • - - additionalVerifierDirs - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\jsp_verifier.js:64 - -

    - - - - - -
    - -
    -

    JSPの検証を行うインスタンスを生成する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - configurations - Object - - - - -
      -

      JSPの検証を行うクラスの設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • verifiers Verifier のコンストラクタ名をキーに持ち、各 Verifier の設定情報を値として持つオブジェクト。
      • -
      - -
      - - -
    • - -
    • - - additionalVerifierDirs - Array | String - - - - -
      -

      独自に作成した Verifier を配置したディレクトリ。

      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\jsp_verifier.js:49 - -

    - - - - - -
    - -
    -

    登録されたVerifierを利用して検証を実施する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - Object - - - - -
      -

      検証対象となるJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - Object - - - - -
      -

      検証対象JSPファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果リスト

    - - -
    -
    - - - -
    - - -
    - - - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/RegexpBasedVerifier.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/RegexpBasedVerifier.html deleted file mode 100644 index 339aae228..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/RegexpBasedVerifier.html +++ /dev/null @@ -1,565 +0,0 @@ - - - - - RegexpBasedVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    RegexpBasedVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    正規表現検証クラス

    -

    JSPファイル内に、指定された正規表現にマッチする文字列が存在(する|しない)かどうかを検証する。

    -

    正規表現は以下のように指定する。

    -
    -

    設定フォーマット (JSON)

    -
    "required": {
    -  "ファイル内で必ず一箇所以上は一致しなくてはいけない正規表現": "コメント"
    -},
    -"forbidden": {
    -  "ファイル内で一致する箇所が存在してはいけない正規表現": "コメント"
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -
    "required": {
    -},
    -"forbidden": {
    -    "/>": "自己終了エレメントを利用すると、その要素以降の記述内容が描画されなくなるため禁止。"
    -}
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    RegexpBasedVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\regexp_based_verifier.js:57 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • required 必ずマッチしなくてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。
      • -
      • forbidden マッチしてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\regexp_based_verifier.js:72 - -

    - - - - - -
    - -
    -

    JSPファイル内に、 required に指定されている正規表現にマッチする文字列が存在すること、 -および、forbiddenに指定されている正規表現にマッチする文字列が存在しないことを検証する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    forbidden

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\regexp_based_verifier.js:47 - -

    - - - - -
    - -
    -

    マッチしてはいけない正規表現のリスト

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    -

    required

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\regexp_based_verifier.js:38 - -

    - - - - -
    - -
    -

    マッチしなくてはいけない正規表現のリスト

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/SelectorBasedVerifier.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/SelectorBasedVerifier.html deleted file mode 100644 index e7d90105a..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/SelectorBasedVerifier.html +++ /dev/null @@ -1,514 +0,0 @@ - - - - - SelectorBasedVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    SelectorBasedVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    DOM検証クラス

    -

    JSPファイル内に、指定されたセレクタにマッチするノードが存在(する|しない)かどうかを検証する。

    -

    セレクタは以下のように指定する。なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。 -使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。

    -

    また、field:textなどのウィジェットをセレクタで指定する場合には、"field\\:text"と、":"をエスケープして記載する必要があることに注意。

    -
    -

    設定フォーマット (JSON)

    -
    "required": {
    -  "ファイル内に必ず一箇所以上はマッチするノードが存在しなくてはいけないセレクタ": "コメント"
    -},
    -"forbidden": {
    -  "ファイル内で一致する箇所が存在してはいけないセレクタ": "コメント"
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -
    "required": {
    -},
    -"forbidden": {
    -  "table:not([listSearchInfoName])": "テーブルにはlistSearchInfoNameがないと結果件数が表示されないため、listSearchInfoNameを強制。",
    -  "table:not([id])" : "テーブルを複数表示する場合にIDが必須となるため、テーブルにはIDを強制。"
    -}
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    SelectorBasedVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\selector_based_verifier.js:62 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • required 必ずマッチしなくてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。
      • -
      • forbidden マッチしてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\selector_based_verifier.js:77 - -

    - - - - - -
    - -
    -

    JSPファイル内に、 required に指定されているセレクタにマッチするノードが存在すること、 -および、forbiddenに指定されているセレクタにマッチするノードが存在しないことを検証する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    forbidden

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\selector_based_verifier.js:52 - -

    - - - - -
    - -
    -

    マッチしてはいけないセレクタのリスト

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagAttributeVerifier.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagAttributeVerifier.html deleted file mode 100644 index 4d6b69eac..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagAttributeVerifier.html +++ /dev/null @@ -1,503 +0,0 @@ - - - - - TagAttributeVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    TagAttributeVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    タグ属性検証クラス

    -

    タグに設定されている属性が、tagファイルで実際に定義されている属性かどうかを検証する。

    -

    下記の設定で、指定されているディレクトリに格納されているタグファイルに対してのみ、属性値の検証が行われる。

    -
    -

    設定フォーマット (JSON)

    -
    "directory": "タグファイルが格納されているディレクトリのパス",
    -"encoding": "タグファイルのエンコーディング"
    -

    設定ファイル記載例 (verification_config.json)

    -
    "directory": "C:\\nablarch\\tutorial\\main\\web\\WEB-INF\\tags\\widget",
    -"encoding": "utf-8"
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    TagAttributeVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_attribute_verifier.js:43 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • directory タグファイルが格納されているディレクトリのパス
      • -
      • encoding タグファイルのエンコーディング
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_attribute_verifier.js:57 - -

    - - - - - -
    - -
    -

    JSPファイルで使用されているタグの属性が、実際に定義されているものであることを検証する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    definitions

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_attribute_verifier.js:33 - -

    - - - - -
    - -
    -

    指定されたディレクトリから読み込んだタグファイルの定義情報

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagUsageVerifier.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagUsageVerifier.html deleted file mode 100644 index 99e7a5e1f..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/TagUsageVerifier.html +++ /dev/null @@ -1,532 +0,0 @@ - - - - - TagUsageVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    TagUsageVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    使用可能タグ検証クラス

    -

    JSPファイル内で使用されているタグが、使用可能なタグであるかどうかを検証する。

    -

    使用可能なタグは、タグ名に完全一致する正規表現として設定ファイルに以下のように記載する。

    -
    -

    設定フォーマット (JSON)

    -
    "allowed_tags": {
    -  "許可するタグ名に完全一致する正規表現": "コメント"
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -
    {
    -  "verifiers": {
    -    "TagUsageVerifier": {
    -      "allowed_tags": {
    -        "n:form": ""
    -        , "n:set": ""
    -        , "n:write": ""
    -        , "n:ConfirmationPage": ""
    -        , "n:forConfirmationPage": ""
    -        , "n:forInputPage": ""
    -        , "n:param": ""
    -        , "t:page_template": "業務画面のテンプレート"
    -        , "t:errorpage_template": "エラー画面のテンプレート"
    -        , "box:.*": ""
    -        , "button:.*": "ボタンウィジェット"
    -        , "field:.*": "入力フォーム部品"
    -        , "link:.*": "リンクウィジェット"
    -        , "tab:.*": "タブウィジェット"
    -        , "table:.*": "テーブルウィジェット"
    -        , "c:if": ""
    -        , "jsp:attribute": ""
    -        , "%@": "JSPディレクティブ"
    -        , "%--": "JSPコメント"
    -      }
    -    }
    -  }
    -}
    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    TagUsageVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_usage_verifier.js:68 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • allowed_tags 使用可能とするタグ名にマッチする正規表現をキーに持ち、コメントを値としてもつオブジェクト。
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_usage_verifier.js:81 - -

    - - - - - -
    - -
    -

    JSPファイルで使用されている全てのタグが、 allowed_tags に指定されているかどうかを検証する。

    -

    なお、以下のUI開発基盤を利用したローカル表示用のマジックコメントは解析対象にならない。

    -
    <!-- <%/* --> <script src="js/devtool.js"></script><meta charset="utf-8"><body> <!-- * /%> -->
    -

    また、JSPディレクティブについては、下記の置換を行ってディレクティブ名を正規化している。

    -
    replace(/<%@\s+([a-zA-Z]+)\s/mg, '<%@$1 ')
    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    allowed_tags

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\tag_usage_verifier.js:58 - -

    - - - - -
    - -
    -

    使用可能とするタグ名にマッチする正規表現

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/VerificationError.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/VerificationError.html deleted file mode 100644 index 9df37aefb..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/VerificationError.html +++ /dev/null @@ -1,573 +0,0 @@ - - - - - VerificationError - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    VerificationError Class

    -
    - - - - - -
    - Defined in: lib\verification_error.js:3 -
    - - - - - -
    - - - -
    -

    検証結果を表すクラス。

    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    VerificationError

    - - -
    - (
      - -
    • - - verifier - -
    • - -
    • - - message - -
    • - -
    • - - path - -
    • - -
    • - - contents - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:44 - -

    - - - - - -
    - -
    -

    検証結果を生成する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - verifier - String - - - - -
      -

      検証を実施したクラス名。

      - -
      - - -
    • - -
    • - - message - String - - - - -
      -

      エラー内容を表すメッセージ

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証エラーとなったファイルのパス

      - -
      - - -
    • - -
    • - - contents - String - - - - -
      -

      検証エラーとなったノードの内容

      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    message

    - String - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:19 - -

    - - - - -
    - -
    -

    エラー内容を表すメッセージ。

    - -
    - - - - - - -
    - - -
    -

    path

    - String - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:27 - -

    - - - - -
    - -
    -

    このエラーが発生したファイルのパス

    - -
    - - - - - - -
    - - -
    -

    path

    - String - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:35 - -

    - - - - -
    - -
    -

    検証エラーとなったノードの内容

    - -
    - - - - - - -
    - - -
    -

    verifier

    - String - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verification_error.js:11 - -

    - - - - -
    - -
    -

    検証を実施したクラス名。

    - -
    - - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/WrappingTagVerifier.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/WrappingTagVerifier.html deleted file mode 100644 index cae202a5b..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/WrappingTagVerifier.html +++ /dev/null @@ -1,531 +0,0 @@ - - - - - WrappingTagVerifier - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    WrappingTagVerifier Class

    -
    - - - - - - - - - - - -
    - - - -
    -

    親タグ検証クラス

    -

    正規表現で指定されたタグ名にマッチするタグの親タグに、指定されているタグが存在(する|しない)かどうかを検証する。

    -

    検証対象とするタグおよびその親タグは以下のように設定する。

    -

    childは 正規表現 で指定するが、parentは セレクタ で指定することに注意。 -このため、parentにn:formなどの":"を含むタグを指定したい場合には、 "n\\:form" のようにエスケープする必要がある。

    -

    なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。 -使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。

    -
    -

    設定フォーマット (JSON)

    -
    "required": {
    -  "コメント": {
    -    "child": "検証対象とするタグにマッチする正規表現",
    -    "parent": "childに指定したタグの親に存在しなくてはいけないタグにマッチするセレクタ"
    -  }
    -},
    -"forbidden": {
    -  "コメント": {
    -    "child": "検証対象とするタグにマッチする正規表現",
    -    "parent": "childに指定したタグの親に存在してはいけないタグにマッチするセレクタ"
    -  }
    -}
    -

    設定ファイル記載例 (verification_config.json)

    -
    "required": {
    -  "tableウィジェットは、n:formで囲む必要がある。": {
    -    "child": "table:.*",
    -    "parent": "n\\:form"
    -  },
    -  "buttonウィジェットは、n:formで囲む必要がある。": {
    -    "child": "button:.*",
    -    "parent": "n\\:form"
    -  },
    - "設計書ビューで画面項目定義に表示されるウィジェットは、spec:layoutで囲む必要がある。": {
    -   "child": "(table|field|column):.+",
    -   "parent": "spec\\:layout"
    - }
    -

    }, - "forbidden": { - }

    -
    - -
    - - - -
    - - -
    -
    -

    Item Index

    - - -
    -

    Methods

    - - -
    - - - -
    -

    Properties

    - - -
    - - - - - -
    - - -
    -

    Methods

    - - -
    -

    verify

    - - -
    - (
      - -
    • - - jsp - -
    • - -
    • - - path - -
    • - -
    ) -
    - - - - - Array - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\wrapping_tag_verifier.js:96 - -

    - - - - - -
    - -
    -

    タグの親子関係を検証する。

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - jsp - String - - - - -
      -

      検証対象とするJSPファイルの内容

      - -
      - - -
    • - -
    • - - path - String - - - - -
      -

      検証対象ファイルのパス

      - -
      - - -
    • - -
    -
    - - - -
    -

    Returns:

    - -
    - - - Array: - -

    検証結果 (VerificationError) を格納した配列

    - - -
    -
    - - - -
    - - -
    -

    WrappingTagVerifier

    - - -
    - (
      - -
    • - - config - -
    • - -
    ) -
    - - - - - - - - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\wrapping_tag_verifier.js:81 - -

    - - - - - -
    - -
    -

    コンストラクタ関数

    - -
    - - -
    -

    Parameters:

    - -
      - -
    • - - config - Object - - - - -
      -

      設定情報を格納したオブジェクト。使用するキーは以下の通り。

      -
        -
      • directory タグファイルが格納されているディレクトリのパス
      • -
      • encoding タグファイルのエンコーディング
      • -
      - -
      - - -
    • - -
    -
    - - - - - -
    - - -
    - - - -
    -

    Properties

    - - -
    -

    forbidden

    - Array - - - - - - - - - -
    - - - -

    - - Defined in - - - - - lib\verifiers\wrapping_tag_verifier.js:71 - -

    - - - - -
    - -
    -

    満たしてはいけない親子関係のリスト

    - -
    - - -

    Default: []

    - - - - - -
    - - -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/index.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/index.html deleted file mode 100644 index 487fe15b2..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/classes/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - Redirector - - - - Click here to redirect - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/data.json b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/data.json deleted file mode 100644 index ddd85665b..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/data.json +++ /dev/null @@ -1,725 +0,0 @@ -{ - "project": {}, - "files": { - "lib\\fileutil\\fs_ext.js": { - "name": "lib\\fileutil\\fs_ext.js", - "modules": {}, - "classes": {}, - "fors": {}, - "namespaces": {} - }, - "lib\\fileutil\\jsp_file_reader.js": { - "name": "lib\\fileutil\\jsp_file_reader.js", - "modules": {}, - "classes": {}, - "fors": {}, - "namespaces": {} - }, - "lib\\fileutil\\tag_file_reader.js": { - "name": "lib\\fileutil\\tag_file_reader.js", - "modules": {}, - "classes": {}, - "fors": {}, - "namespaces": {} - }, - "lib\\parser\\tag_file_parser.js": { - "name": "lib\\parser\\tag_file_parser.js", - "modules": {}, - "classes": {}, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\regexp_based_verifier.js": { - "name": "lib\\verifiers\\regexp_based_verifier.js", - "modules": {}, - "classes": { - "RegexpBasedVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\selector_based_verifier.js": { - "name": "lib\\verifiers\\selector_based_verifier.js", - "modules": {}, - "classes": { - "SelectorBasedVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\tag_attribute_verifier.js": { - "name": "lib\\verifiers\\tag_attribute_verifier.js", - "modules": {}, - "classes": { - "TagAttributeVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\tag_usage_verifier.js": { - "name": "lib\\verifiers\\tag_usage_verifier.js", - "modules": {}, - "classes": { - "TagUsageVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verifiers\\wrapping_tag_verifier.js": { - "name": "lib\\verifiers\\wrapping_tag_verifier.js", - "modules": {}, - "classes": { - "WrappingTagVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\jsp_verifier.js": { - "name": "lib\\jsp_verifier.js", - "modules": {}, - "classes": { - "JspVerifier": 1 - }, - "fors": {}, - "namespaces": {} - }, - "lib\\verification_error.js": { - "name": "lib\\verification_error.js", - "modules": {}, - "classes": { - "VerificationError": 1 - }, - "fors": {}, - "namespaces": {} - } - }, - "modules": {}, - "classes": { - "RegexpBasedVerifier": { - "name": "RegexpBasedVerifier", - "shortname": "RegexpBasedVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 7, - "description": "正規表現検証クラス\n=====================================================================\n\nJSPファイル内に、指定された正規表現にマッチする文字列が存在(する|しない)かどうかを検証する。\n\n正規表現は以下のように指定する。\n\n> __設定フォーマット (JSON)__\n>\n> \"required\": {\n> \"ファイル内で必ず一箇所以上は一致しなくてはいけない正規表現\": \"コメント\"\n> },\n> \"forbidden\": {\n> \"ファイル内で一致する箇所が存在してはいけない正規表現\": \"コメント\"\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> \"required\": {\n> },\n> \"forbidden\": {\n> \"/>\": \"自己終了エレメントを利用すると、その要素以降の記述内容が描画されなくなるため禁止。\"\n> }" - }, - "SelectorBasedVerifier": { - "name": "SelectorBasedVerifier", - "shortname": "SelectorBasedVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 8, - "description": "DOM検証クラス\n=====================================================================\n\nJSPファイル内に、指定されたセレクタにマッチするノードが存在(する|しない)かどうかを検証する。\n\nセレクタは以下のように指定する。なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。\n使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。\n\nまた、field:textなどのウィジェットをセレクタで指定する場合には、\"field\\\\\\\\:text\"と、\":\"をエスケープして記載する必要があることに注意。\n\n> __設定フォーマット (JSON)__\n>\n> \"required\": {\n> \"ファイル内に必ず一箇所以上はマッチするノードが存在しなくてはいけないセレクタ\": \"コメント\"\n> },\n> \"forbidden\": {\n> \"ファイル内で一致する箇所が存在してはいけないセレクタ\": \"コメント\"\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> \"required\": {\n> },\n> \"forbidden\": {\n> \"table:not([listSearchInfoName])\": \"テーブルにはlistSearchInfoNameがないと結果件数が表示されないため、listSearchInfoNameを強制。\",\n> \"table:not([id])\" : \"テーブルを複数表示する場合にIDが必須となるため、テーブルにはIDを強制。\"\n> }" - }, - "TagAttributeVerifier": { - "name": "TagAttributeVerifier", - "shortname": "TagAttributeVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\tag_attribute_verifier.js", - "line": 9, - "description": "タグ属性検証クラス\n=====================================================================\n\nタグに設定されている属性が、tagファイルで実際に定義されている属性かどうかを検証する。\n\n下記の設定で、指定されているディレクトリに格納されているタグファイルに対してのみ、属性値の検証が行われる。\n\n> __設定フォーマット (JSON)__\n>\n> \"directory\": \"タグファイルが格納されているディレクトリのパス\",\n> \"encoding\": \"タグファイルのエンコーディング\"\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> \"directory\": \"C:\\\\nablarch\\\\tutorial\\\\main\\\\web\\\\WEB-INF\\\\tags\\\\widget\",\n> \"encoding\": \"utf-8\"" - }, - "TagUsageVerifier": { - "name": "TagUsageVerifier", - "shortname": "TagUsageVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\tag_usage_verifier.js", - "line": 8, - "description": "使用可能タグ検証クラス\n=====================================================================\n\nJSPファイル内で使用されているタグが、使用可能なタグであるかどうかを検証する。\n\n使用可能なタグは、タグ名に完全一致する正規表現として設定ファイルに以下のように記載する。\n\n> __設定フォーマット (JSON)__\n>\n> \"allowed_tags\": {\n> \"許可するタグ名に完全一致する正規表現\": \"コメント\"\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> {\n> \"verifiers\": {\n> \"TagUsageVerifier\": {\n> \"allowed_tags\": {\n> \"n:form\": \"\"\n> , \"n:set\": \"\"\n> , \"n:write\": \"\"\n> , \"n:ConfirmationPage\": \"\"\n> , \"n:forConfirmationPage\": \"\"\n> , \"n:forInputPage\": \"\"\n> , \"n:param\": \"\"\n> , \"t:page_template\": \"業務画面のテンプレート\"\n> , \"t:errorpage_template\": \"エラー画面のテンプレート\"\n> , \"box:.*\": \"\"\n> , \"button:.*\": \"ボタンウィジェット\"\n> , \"field:.*\": \"入力フォーム部品\"\n> , \"link:.*\": \"リンクウィジェット\"\n> , \"tab:.*\": \"タブウィジェット\"\n> , \"table:.*\": \"テーブルウィジェット\"\n> , \"c:if\": \"\"\n> , \"jsp:attribute\": \"\"\n> , \"%@\": \"JSPディレクティブ\"\n> , \"%--\": \"JSPコメント\"\n> }\n> }\n> }\n> }" - }, - "WrappingTagVerifier": { - "name": "WrappingTagVerifier", - "shortname": "WrappingTagVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 8, - "description": "親タグ検証クラス\n=====================================================================\n\n正規表現で指定されたタグ名にマッチするタグの親タグに、指定されているタグが存在(する|しない)かどうかを検証する。\n\n検証対象とするタグおよびその親タグは以下のように設定する。\n\nchildは __正規表現__ で指定するが、parentは __セレクタ__ で指定することに注意。\nこのため、parentにn:formなどの\":\"を含むタグを指定したい場合には、 \"n\\\\\\\\:form\" のようにエスケープする必要がある。\n\nなお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。\n使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。\n\n> __設定フォーマット (JSON)__\n>\n> \"required\": {\n> \"コメント\": {\n> \"child\": \"検証対象とするタグにマッチする正規表現\",\n> \"parent\": \"childに指定したタグの親に存在しなくてはいけないタグにマッチするセレクタ\"\n> }\n> },\n> \"forbidden\": {\n> \"コメント\": {\n> \"child\": \"検証対象とするタグにマッチする正規表現\",\n> \"parent\": \"childに指定したタグの親に存在してはいけないタグにマッチするセレクタ\"\n> }\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> \"required\": {\n> \"tableウィジェットは、n:formで囲む必要がある。\": {\n> \"child\": \"table:.*\",\n> \"parent\": \"n\\\\:form\"\n> },\n> \"buttonウィジェットは、n:formで囲む必要がある。\": {\n> \"child\": \"button:.*\",\n> \"parent\": \"n\\\\:form\"\n> },\n> \"設計書ビューで画面項目定義に表示されるウィジェットは、spec:layoutで囲む必要がある。\": {\n> \"child\": \"(table|field|column):.+\",\n> \"parent\": \"spec\\\\:layout\"\n> }\n> },\n> \"forbidden\": {\n> }" - }, - "JspVerifier": { - "name": "JspVerifier", - "shortname": "JspVerifier", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\jsp_verifier.js", - "line": 8, - "description": "JSPファイル検証クラス\n=====================================================================\n\n設定情報をもとに、実際に検証を実施するクラス (`Verifier`) を生成し、それらのクラスでの検証結果を集約して返却する。\n\n`Verifier` についての設定は、設定ファイルに以下のように記載する。\n\n> __設定フォーマット (JSON)__\n>\n> \"verifiers\": {\n> \"Verifierのコンストラクタ名\": {\n> // Verifier毎の設定情報\n> }\n> }\n>\n> __設定ファイル記載例 (verification_config.json)__\n>\n> 例えば、 `TagUsageVerifier` と `SelectorBasedVerifier` を利用する場合、以下のように記載する。\n>\n> {\n> \"verifiers\": {\n> \"TagUsageVerifier\": {\n> \"allowed_tags\": {\n> }\n> }\n> \"SelectorBasedVerifier\": {\n> \"required\": {\n> }\n> \"forbidden\": {\n> }\n> }\n> }\n> }\n>" - }, - "VerificationError": { - "name": "VerificationError", - "shortname": "VerificationError", - "classitems": [], - "plugins": [], - "extensions": [], - "plugin_for": [], - "extension_for": [], - "file": "lib\\verification_error.js", - "line": 3, - "description": "検証結果を表すクラス。" - } - }, - "classitems": [ - { - "file": "lib\\fileutil\\fs_ext.js", - "line": 6, - "description": "指定されたディレクトリから、filterにマッチするファイルを再帰的に抽出し、\nそれらのファイルへの絶対パスのリストを返却する。", - "params": [ - { - "name": "dir", - "description": "ファイルを抽出する対象のディレクトリ" - }, - { - "name": "filter", - "description": "抽出対象とするファイルの場合にtrueを返却するフィルター" - } - ], - "return": { - "description": "抽出されたファイルへの絶対パスのリスト", - "type": "Array" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\fileutil\\jsp_file_reader.js", - "line": 5, - "description": "以下の正規化処理を行って、JSPファイルを読み込む。\n\n* devtool.js読み込み用ののマジックコメントを除去\n* JSPディレクティブ(<%@)の後のスペースを除去", - "params": [ - { - "name": "path", - "description": "読み込むファイルのパス" - }, - { - "name": "encoding", - "description": "読み込むファイルのエンコーディング" - } - ], - "return": { - "description": "正規化されて読み込まれたJSPファイルの内容", - "type": "String" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\fileutil\\tag_file_reader.js", - "line": 10, - "description": "指定されたディレクトリに格納されているtagファイルを読み込み、\nそれぞれのtagの定義情報のリストを返却する。\n\ntagの定義情報は以下の形式で格納されている。\n\nname\n: tag名。指定されたディレクトリをベースとして、配下のディレクトリ名とファイル名を、dirname:filename形式で結合した値。\n\nattributes\n: tagファイルの内容をTagFileParserでパースした内容", - "params": [ - { - "name": "directory", - "description": "tagファイルの格納されているディレクトリ" - }, - { - "name": "encoding", - "description": "tagファイルのエンコーディング" - } - ], - "return": { - "description": "読み込まれたtagファイルのパース結果リスト(キー:tag名、値:tagファイルの定義情報)", - "type": "Array" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\parser\\tag_file_parser.js", - "line": 8, - "description": "tagファイルのattribute定義情報のリストを取得し、返却する。\n\nattribute定義情報は、以下の属性値を格納したオブジェクトとなっており、すべてStringとして格納されている。\nなお、属性値が定義されていない場合には、undefinedとして格納される。\n\n* name\n* description\n* required\n* type\n* rtexprvalue\n* fragment", - "params": [ - { - "name": "body", - "description": "tagファイルの内容" - } - ], - "return": { - "description": "tagファイルに定義されている属性のリスト", - "type": "Array" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 38, - "description": "マッチしなくてはいけない正規表現のリスト", - "itemtype": "property", - "name": "required", - "type": "Array", - "default": "[]", - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 47, - "description": "マッチしてはいけない正規表現のリスト", - "itemtype": "property", - "name": "forbidden", - "type": "Array", - "default": "[]", - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 57, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "RegexpBasedVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **required** 必ずマッチしなくてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。\n * **forbidden** マッチしてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。", - "type": "Object" - } - ], - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\regexp_based_verifier.js", - "line": 72, - "description": "JSPファイル内に、 required に指定されている正規表現にマッチする文字列が存在すること、\nおよび、forbiddenに指定されている正規表現にマッチする文字列が存在しないことを検証する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "RegexpBasedVerifier" - }, - { - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 43, - "description": "マッチしなくてはいけないセレクタのリスト", - "params": [ - { - "name": "required", - "description": "" - } - ], - "type": "Array", - "default": "[]", - "class": "SelectorBasedVerifier" - }, - { - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 52, - "description": "マッチしてはいけないセレクタのリスト", - "itemtype": "property", - "name": "forbidden", - "type": "Array", - "default": "[]", - "class": "SelectorBasedVerifier" - }, - { - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 62, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "SelectorBasedVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **required** 必ずマッチしなくてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。\n * **forbidden** マッチしてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。", - "type": "Object" - } - ], - "class": "SelectorBasedVerifier" - }, - { - "file": "lib\\verifiers\\selector_based_verifier.js", - "line": 77, - "description": "JSPファイル内に、 required に指定されているセレクタにマッチするノードが存在すること、\nおよび、forbiddenに指定されているセレクタにマッチするノードが存在しないことを検証する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "SelectorBasedVerifier" - }, - { - "file": "lib\\verifiers\\tag_attribute_verifier.js", - "line": 33, - "description": "指定されたディレクトリから読み込んだタグファイルの定義情報", - "itemtype": "property", - "name": "definitions", - "type": "Array", - "default": "[]", - "class": "TagAttributeVerifier" - }, - { - "file": "lib\\verifiers\\tag_attribute_verifier.js", - "line": 43, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "TagAttributeVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **directory** タグファイルが格納されているディレクトリのパス\n * **encoding** タグファイルのエンコーディング", - "type": "Object" - } - ], - "class": "TagAttributeVerifier" - }, - { - "file": "lib\\verifiers\\tag_attribute_verifier.js", - "line": 57, - "description": "JSPファイルで使用されているタグの属性が、実際に定義されているものであることを検証する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "TagAttributeVerifier" - }, - { - "file": "lib\\verifiers\\tag_usage_verifier.js", - "line": 58, - "description": "使用可能とするタグ名にマッチする正規表現", - "itemtype": "property", - "name": "allowed_tags", - "type": "Array", - "default": "[]", - "class": "TagUsageVerifier" - }, - { - "file": "lib\\verifiers\\tag_usage_verifier.js", - "line": 68, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "TagUsageVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **allowed_tags** 使用可能とするタグ名にマッチする正規表現をキーに持ち、コメントを値としてもつオブジェクト。", - "type": "Object" - } - ], - "class": "TagUsageVerifier" - }, - { - "file": "lib\\verifiers\\tag_usage_verifier.js", - "line": 81, - "description": "JSPファイルで使用されている全てのタグが、 `allowed_tags` に指定されているかどうかを検証する。\n\nなお、以下のUI開発基盤を利用したローカル表示用のマジックコメントは解析対象にならない。\n\n \n\nまた、JSPディレクティブについては、下記の置換を行ってディレクティブ名を正規化している。\n\n replace(/<%@\\s+([a-zA-Z]+)\\s/mg, '<%@$1 ')", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "TagUsageVerifier" - }, - { - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 62, - "description": "満たさなくてはいけない親子関係のリスト", - "params": [ - { - "name": "required", - "description": "" - } - ], - "type": "Array", - "default": "[]", - "class": "WrappingTagVerifier" - }, - { - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 71, - "description": "満たしてはいけない親子関係のリスト", - "itemtype": "property", - "name": "forbidden", - "type": "Array", - "default": "[]", - "class": "WrappingTagVerifier" - }, - { - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 81, - "description": "コンストラクタ関数", - "itemtype": "method", - "name": "WrappingTagVerifier", - "is_constructor": 1, - "params": [ - { - "name": "config", - "description": "設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **directory** タグファイルが格納されているディレクトリのパス\n * **encoding** タグファイルのエンコーディング", - "type": "Object" - } - ], - "class": "WrappingTagVerifier" - }, - { - "file": "lib\\verifiers\\wrapping_tag_verifier.js", - "line": 96, - "description": "タグの親子関係を検証する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象とするJSPファイルの内容", - "type": "String" - }, - { - "name": "path", - "description": "検証対象ファイルのパス", - "type": "String" - } - ], - "return": { - "description": "検証結果 ({{#crossLink \"VerificationError\"}}{{/crossLink}}) を格納した配列", - "type": "Array" - }, - "class": "WrappingTagVerifier" - }, - { - "file": "lib\\jsp_verifier.js", - "line": 49, - "description": "登録されたVerifierを利用して検証を実施する。", - "itemtype": "method", - "name": "verify", - "params": [ - { - "name": "jsp", - "description": "検証対象となるJSPファイルの内容" - }, - { - "name": "path", - "description": "検証対象JSPファイルのパス" - } - ], - "return": { - "description": "検証結果リスト", - "type": "Array" - }, - "class": "JspVerifier" - }, - { - "file": "lib\\jsp_verifier.js", - "line": 64, - "description": "JSPの検証を行うインスタンスを生成する。", - "is_constructor": 1, - "itemtype": "method", - "name": "JspVerifier", - "params": [ - { - "name": "configurations", - "description": "JSPの検証を行うクラスの設定情報を格納したオブジェクト。使用するキーは以下の通り。\n\n * **verifiers** `Verifier` のコンストラクタ名をキーに持ち、各 `Verifier` の設定情報を値として持つオブジェクト。", - "type": "Object" - }, - { - "name": "additionalVerifierDirs", - "description": "独自に作成した `Verifier` を配置したディレクトリ。", - "type": "Array | String" - } - ], - "class": "JspVerifier" - }, - { - "file": "lib\\jsp_verifier.js", - "line": 99, - "description": "verifierDirs内のすべてのファイルを読み込み、Verifierのコンストラクタを取得する。", - "params": [ - { - "name": "verifierDirs", - "description": "Verifierが格納されているディレクトリ" - } - ], - "return": { - "description": "Verifierの名前がキー、コンストラクタメソッドが値となっているオブジェクト", - "type": "Object" - }, - "class": "JspVerifier" - }, - { - "file": "lib\\verification_error.js", - "line": 11, - "description": "検証を実施したクラス名。", - "itemtype": "property", - "name": "verifier", - "type": "String", - "class": "VerificationError" - }, - { - "file": "lib\\verification_error.js", - "line": 19, - "description": "エラー内容を表すメッセージ。", - "itemtype": "property", - "name": "message", - "type": "String", - "class": "VerificationError" - }, - { - "file": "lib\\verification_error.js", - "line": 27, - "description": "このエラーが発生したファイルのパス", - "itemtype": "property", - "name": "path", - "type": "String", - "class": "VerificationError" - }, - { - "file": "lib\\verification_error.js", - "line": 35, - "description": "検証エラーとなったノードの内容", - "itemtype": "property", - "name": "path", - "type": "String", - "class": "VerificationError" - }, - { - "file": "lib\\verification_error.js", - "line": 44, - "description": "検証結果を生成する。", - "is_constructor": 1, - "itemtype": "method", - "name": "VerificationError", - "params": [ - { - "name": "verifier", - "description": "検証を実施したクラス名。", - "type": "String" - }, - { - "name": "message", - "description": "エラー内容を表すメッセージ", - "type": "String" - }, - { - "name": "path", - "description": "検証エラーとなったファイルのパス", - "type": "String" - }, - { - "name": "contents", - "description": "検証エラーとなったノードの内容", - "type": "String" - } - ], - "class": "VerificationError" - } - ], - "warnings": [ - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\fileutil\\fs_ext.js:6" - }, - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\fileutil\\jsp_file_reader.js:5" - }, - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\fileutil\\tag_file_reader.js:10" - }, - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\parser\\tag_file_parser.js:8" - }, - { - "message": "replacing incorrect tag: returns with return", - "line": " lib\\jsp_verifier.js:99" - }, - { - "message": "Missing item type\n指定されたディレクトリから、filterにマッチするファイルを再帰的に抽出し、\nそれらのファイルへの絶対パスのリストを返却する。", - "line": " lib\\fileutil\\fs_ext.js:6" - }, - { - "message": "Missing item type\n以下の正規化処理を行って、JSPファイルを読み込む。\n\n* devtool.js読み込み用ののマジックコメントを除去\n* JSPディレクティブ(<%@)の後のスペースを除去", - "line": " lib\\fileutil\\jsp_file_reader.js:5" - }, - { - "message": "Missing item type\n指定されたディレクトリに格納されているtagファイルを読み込み、\nそれぞれのtagの定義情報のリストを返却する。\n\ntagの定義情報は以下の形式で格納されている。\n\nname\n: tag名。指定されたディレクトリをベースとして、配下のディレクトリ名とファイル名を、dirname:filename形式で結合した値。\n\nattributes\n: tagファイルの内容をTagFileParserでパースした内容", - "line": " lib\\fileutil\\tag_file_reader.js:10" - }, - { - "message": "Missing item type\ntagファイルのattribute定義情報のリストを取得し、返却する。\n\nattribute定義情報は、以下の属性値を格納したオブジェクトとなっており、すべてStringとして格納されている。\nなお、属性値が定義されていない場合には、undefinedとして格納される。\n\n* name\n* description\n* required\n* type\n* rtexprvalue\n* fragment", - "line": " lib\\parser\\tag_file_parser.js:8" - }, - { - "message": "Missing item type\nマッチしなくてはいけないセレクタのリスト", - "line": " lib\\verifiers\\selector_based_verifier.js:43" - }, - { - "message": "Missing item type\n満たさなくてはいけない親子関係のリスト", - "line": " lib\\verifiers\\wrapping_tag_verifier.js:62" - }, - { - "message": "Missing item type\nverifierDirs内のすべてのファイルを読み込み、Verifierのコンストラクタを取得する。", - "line": " lib\\jsp_verifier.js:99" - } - ] -} \ No newline at end of file diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/index.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/index.html deleted file mode 100644 index 487fe15b2..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - Redirector - - - - Click here to redirect - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_fs_ext.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_fs_ext.js.html deleted file mode 100644 index 42fb444dc..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_fs_ext.js.html +++ /dev/null @@ -1,155 +0,0 @@ - - - - - lib\fileutil\fs_ext.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\fileutil\fs_ext.js

    - -
    -
    -'use strict';
    -
    -var fs = require('fs')
    -  , path = require('path');
    -
    -/**
    - * 指定されたディレクトリから、filterにマッチするファイルを再帰的に抽出し、
    - * それらのファイルへの絶対パスのリストを返却する。
    - *
    - * @param dir ファイルを抽出する対象のディレクトリ
    - * @param filter 抽出対象とするファイルの場合にtrueを返却するフィルター
    - * @returns {Array} 抽出されたファイルへの絶対パスのリスト
    - */
    -function FsExt_listFilesRecursively(dir, filter) {
    -  var results = [];
    -  var list = fs.readdirSync(dir);
    -  list.forEach(function(file) {
    -    file = dir + path.sep + file;
    -    var stat = fs.statSync(file)
    -      , normalized;
    -    if(stat && stat.isDirectory()) {
    -      results = results.concat(FsExt_listFilesRecursively(file, filter))
    -    } else {
    -      normalized = path.resolve(path.normalize(file));
    -      if(filter(normalized)) {
    -        results.push(normalized);
    -      }
    -    }
    -  });
    -  return results
    -}
    -
    -module.exports = {
    -  listFilesRecursively: FsExt_listFilesRecursively
    -};
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_jsp_file_reader.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_jsp_file_reader.js.html deleted file mode 100644 index 24e26d710..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_jsp_file_reader.js.html +++ /dev/null @@ -1,143 +0,0 @@ - - - - - lib\fileutil\jsp_file_reader.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\fileutil\jsp_file_reader.js

    - -
    -
    -'use strict';
    -
    -var fs = require('fs');
    -
    -/**
    - * 以下の正規化処理を行って、JSPファイルを読み込む。
    - *
    - * * devtool.js読み込み用ののマジックコメントを除去
    - * * JSPディレクティブ(<%@)の後のスペースを除去
    - *
    - * @param path 読み込むファイルのパス
    - * @param encoding 読み込むファイルのエンコーディング
    - * @returns {String} 正規化されて読み込まれたJSPファイルの内容
    - */
    -function JspFileReader_readFormatted(path, encoding) {
    -  var DEVTOOL_MAGIC_COMMENT = '<!-- <%/* --> <script src="js/devtool.js"></script><meta charset="utf-8"><body> <!-- */%> -->'
    -    , jsp = fs.readFileSync(path, encoding);
    -  return jsp.replace(DEVTOOL_MAGIC_COMMENT, '').replace(/<%@\s+([a-zA-Z]+)\s/mg, '<%@$1 ');
    -}
    -
    -module.exports = {
    -  readFormatted: JspFileReader_readFormatted
    -};
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_tag_file_reader.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_tag_file_reader.js.html deleted file mode 100644 index 1cfc87e51..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_fileutil_tag_file_reader.js.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - lib\fileutil\tag_file_reader.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\fileutil\tag_file_reader.js

    - -
    -
    -'use strict';
    -
    -require('sugar');
    -
    -var reader = require('./jsp_file_reader')
    -  , path = require('path')
    -  , fsExt = require('./fs_ext')
    -  , parser = require('../parser/tag_file_parser');
    -
    -/**
    - * 指定されたディレクトリに格納されているtagファイルを読み込み、
    - * それぞれのtagの定義情報のリストを返却する。
    - *
    - * tagの定義情報は以下の形式で格納されている。
    - *
    - * name
    - * : tag名。指定されたディレクトリをベースとして、配下のディレクトリ名とファイル名を、dirname:filename形式で結合した値。
    - *
    - * attributes
    - * : tagファイルの内容をTagFileParserでパースした内容
    - *
    - * @param directory tagファイルの格納されているディレクトリ
    - * @param encoding tagファイルのエンコーディング
    - * @returns {Array} 読み込まれたtagファイルのパース結果リスト(キー:tag名、値:tagファイルの定義情報)
    - */
    -function TagFileReader_loadAllTags(directory, encoding) {
    -  directory = path.resolve(path.normalize(directory));
    -  return fsExt.listFilesRecursively(directory, function(name) {
    -    return path.extname(name) === '.tag'
    -  }).reduce(function(loaded, file) {
    -    var parsed = {};
    -    // 指定されたディレクトリ名の末尾に\や/がついているかどうか分からないので、
    -    // ディレクトリ名除去後に、先頭の\と/を除去する。
    -    parsed['name'] = file.replace(directory, '').replace(/^[\/\\]/, '').replace(/[\/\\]/g, ':').replace(/\.tag$/, '');
    -    parsed['attributes'] = parser.parse(reader.readFormatted(file, encoding));
    -    loaded.push(parsed);
    -    return loaded
    -  }, []);
    -}
    -
    -module.exports = {
    -  loadAllTags: TagFileReader_loadAllTags
    -};
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_jsp_verifier.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_jsp_verifier.js.html deleted file mode 100644 index 850609fb0..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_jsp_verifier.js.html +++ /dev/null @@ -1,237 +0,0 @@ - - - - - lib\jsp_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\jsp_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var fs = require('fs')
    -  , path = require('path');
    -
    -/**
    - * JSPファイル検証クラス
    - * =====================================================================
    - *
    - * 設定情報をもとに、実際に検証を実施するクラス (`Verifier`) を生成し、それらのクラスでの検証結果を集約して返却する。
    - *
    - * `Verifier` についての設定は、設定ファイルに以下のように記載する。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "verifiers": {
    - * >       "Verifierのコンストラクタ名": {
    - * >         // Verifier毎の設定情報
    - * >       }
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * > 例えば、 `TagUsageVerifier` と `SelectorBasedVerifier` を利用する場合、以下のように記載する。
    - * >
    - * >     {
    - * >       "verifiers": {
    - * >         "TagUsageVerifier": {
    - * >           "allowed_tags": {
    - * >           }
    - * >         }
    - * >         "SelectorBasedVerifier": {
    - * >           "required": {
    - * >           }
    - * >           "forbidden": {
    - * >           }
    - * >         }
    - * >       }
    - * >     }
    - * >
    - *
    - * @class JspVerifier
    - */
    -JspVerifier.prototype = {
    -  constructor: JspVerifier,
    -
    -  /**
    -   * 登録されたVerifierを利用して検証を実施する。
    -   *
    -   * @method verify
    -   * @param jsp 検証対象となるJSPファイルの内容
    -   * @param path 検証対象JSPファイルのパス
    -   * @return {Array} 検証結果リスト
    -   */
    -  verify: function(jsp, path) {
    -    return this.verifiers.map(function(verifier) {
    -      return verifier.verify(jsp, path);
    -    }).flatten();
    -  }
    -};
    -
    -/**
    - * JSPの検証を行うインスタンスを生成する。
    - *
    - * @constructor
    - * @method JspVerifier
    - * @param configurations {Object} JSPの検証を行うクラスの設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **verifiers** `Verifier` のコンストラクタ名をキーに持ち、各 `Verifier` の設定情報を値として持つオブジェクト。
    - *
    - * @param additionalVerifierDirs {Array | String} 独自に作成した `Verifier` を配置したディレクトリ。
    - */
    -function JspVerifier(configurations, additionalVerifierDirs) {
    -  var self = this
    -    , verifierConfig = Object.extended(configurations["verifiers"])
    -    , verifierDirs = [__dirname + "/verifiers", additionalVerifierDirs].flatten()
    -    , constructors = loadVerifiers(verifierDirs);
    -
    -  self.verifiers = [];
    -  verifierConfig.each(function(name, config) {
    -      var constructor = constructors[name];
    -      if(!constructor) {
    -        throw {message: ("設定ファイルに記載されている {name} を生成できませんでした。\n" +
    -                         "Verifierの配置ディレクトリは\n" +
    -                         "{verifierDirs}\n" +
    -                         "と設定されています。\n" +
    -                         "設定ファイルが正しいか、もしくは配置ディレクトリを正しく設定しているかを確認してください。").assign({
    -                                                                                   "name": name,
    -                                                                                   "verifierDirs": "\t" + verifierDirs.join("\n\t")
    -                                                                                 })};
    -      }
    -      self.verifiers.push(new constructor(config))
    -    }
    -  );
    -}
    -
    -/**
    - * verifierDirs内のすべてのファイルを読み込み、Verifierのコンストラクタを取得する。
    - *
    - * @param verifierDirs Verifierが格納されているディレクトリ
    - * @returns {Object} Verifierの名前がキー、コンストラクタメソッドが値となっているオブジェクト
    - */
    -function loadVerifiers(verifierDirs) {
    -  return verifierDirs.reduce(function(constructors, verifierDir) {
    -    if(verifierDir) {
    -      fs.readdirSync(verifierDir).each(function(file) {
    -        var v = require(path.resolve('.', verifierDir + "/" + file));
    -        constructors[v.name] = v;
    -      });
    -    }
    -    return constructors;
    -  }, {});
    -}
    -
    -module.exports = JspVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_parser_tag_file_parser.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_parser_tag_file_parser.js.html deleted file mode 100644 index a5d8beea9..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_parser_tag_file_parser.js.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - lib\parser\tag_file_parser.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\parser\tag_file_parser.js

    - -
    -
    -'use strict';
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , path = require('path');
    -
    -/**
    - * tagファイルのattribute定義情報のリストを取得し、返却する。
    - *
    - * attribute定義情報は、以下の属性値を格納したオブジェクトとなっており、すべてStringとして格納されている。
    - * なお、属性値が定義されていない場合には、undefinedとして格納される。
    - *
    - * * name
    - * * description
    - * * required
    - * * type
    - * * rtexprvalue
    - * * fragment
    - *
    - * @param body tagファイルの内容
    - * @returns {Array} tagファイルに定義されている属性のリスト
    - */
    -function TagFileParser_parse(body) {
    -  var parsed = [];
    -  $('<div>').append(body).find('\\%\\@attribute').each(function(idx, node) {
    -    var $node = $(node);
    -    parsed.push({
    -      name: $node.attr('name'),
    -      description: $node.attr('description'),
    -      required: $node.attr('required'),
    -      type: $node.attr('type'),
    -      rtexprvalue: $node.attr('rtexprvalue'),
    -      fragment: $node.attr('fragment')
    -    });
    -  });
    -  return parsed;
    -}
    -
    -module.exports = {
    -  parse: TagFileParser_parse
    -};
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verification_error.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verification_error.js.html deleted file mode 100644 index 196f715de..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verification_error.js.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - lib\verification_error.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verification_error.js

    - -
    -
    -"use strict";
    -
    -/**
    - * 検証結果を表すクラス。
    - *
    - * @class VerificationError
    - */
    -VerificationError.prototype = {
    -  constructor: VerificationError,
    -
    -  /**
    -   * 検証を実施したクラス名。
    -   *
    -   * @property verifier
    -   * @type String
    -   */
    -  verifier: null,
    -
    -  /**
    -   * エラー内容を表すメッセージ。
    -   *
    -   * @property message
    -   * @type String
    -   */
    -  message: null,
    -
    -  /**
    -   * このエラーが発生したファイルのパス
    -   *
    -   * @property path
    -   * @type String
    -   */
    -  path: null,
    -
    -  /**
    -   * 検証エラーとなったノードの内容
    -   *
    -   * @property path
    -   * @type String
    -   */
    -  contents: null
    -};
    -
    -/**
    - * 検証結果を生成する。
    - *
    - * @constructor
    - * @method VerificationError
    - * @param {String} verifier 検証を実施したクラス名。
    - * @param {String} message エラー内容を表すメッセージ
    - * @param {String} path 検証エラーとなったファイルのパス
    - * @param {String} contents 検証エラーとなったノードの内容
    - */
    -function VerificationError(verifier, message, path, contents) {
    -  this.verifier = verifier;
    -  this.message = message;
    -  this.path = path;
    -  this.contents = contents;
    -}
    -
    -module.exports = VerificationError;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_regexp_based_verifier.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_regexp_based_verifier.js.html deleted file mode 100644 index 015baf605..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_regexp_based_verifier.js.html +++ /dev/null @@ -1,222 +0,0 @@ - - - - - lib\verifiers\regexp_based_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\regexp_based_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var VerificationError = require('../verification_error');
    -
    -/**
    - * 正規表現検証クラス
    - * =====================================================================
    - *
    - * JSPファイル内に、指定された正規表現にマッチする文字列が存在(する|しない)かどうかを検証する。
    - *
    - * 正規表現は以下のように指定する。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "required": {
    - * >       "ファイル内で必ず一箇所以上は一致しなくてはいけない正規表現": "コメント"
    - * >     },
    - * >     "forbidden": {
    - * >       "ファイル内で一致する箇所が存在してはいけない正規表現": "コメント"
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     "required": {
    - * >     },
    - * >     "forbidden": {
    - * >         "/>": "自己終了エレメントを利用すると、その要素以降の記述内容が描画されなくなるため禁止。"
    - * >     }
    - *
    - * @class RegexpBasedVerifier
    - */
    -RegexpBasedVerifier.prototype = {
    -  constructor: RegexpBasedVerifier,
    -  verify: RegexpBasedVerifier_verify,
    -
    -  /**
    -   * マッチしなくてはいけない正規表現のリスト
    -   *
    -   * @property required
    -   * @type Array
    -   * @default []
    -   */
    -  required: [],
    -
    -  /**
    -   * マッチしてはいけない正規表現のリスト
    -   *
    -   * @property forbidden
    -   * @type Array
    -   * @default []
    -   */
    -  forbidden: []
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method RegexpBasedVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **required** 必ずマッチしなくてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。
    - *    * **forbidden** マッチしてはいけない正規表現をキーに持ち、コメントを値としてもつオブジェクト。
    - */
    -function RegexpBasedVerifier(config) {
    -  this.required = Object.extended(config['required']).keys();
    -  this.forbidden = Object.extended(config['forbidden']).keys();
    -}
    -
    -/**
    - * JSPファイル内に、 required に指定されている正規表現にマッチする文字列が存在すること、
    - * および、forbiddenに指定されている正規表現にマッチする文字列が存在しないことを検証する。
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function RegexpBasedVerifier_verify(jsp, path) {
    -  var self = this
    -    , lines = Object.extended(jsp.split('\n'))
    -    , result;
    -  result = this.required.reduce(function(res, r) {
    -    if (!jsp.match(new RegExp(r))) {
    -      res.push(new VerificationError('RegexpBasedVerifier', r + ' にマッチする文字列が検出されませんでした。', path, ''));
    -    }
    -    return res;
    -  }, []);
    -  result = lines.reduce(function(res, line, n) {
    -    self.forbidden.each(function(r) {
    -      if (line.match(new RegExp(r))) {
    -        res.push(new VerificationError('RegexpBasedVerifier', (n + 1) + '行目に ' + r + ' にマッチする文字列が検出されました。', path, line));
    -      }
    -    });
    -    return res;
    -  }, result);
    -  return result;
    -}
    -
    -module.exports = RegexpBasedVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_selector_based_verifier.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_selector_based_verifier.js.html deleted file mode 100644 index 335d3f048..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_selector_based_verifier.js.html +++ /dev/null @@ -1,225 +0,0 @@ - - - - - lib\verifiers\selector_based_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\selector_based_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , VerificationError = require('../verification_error');
    -
    -/**
    - * DOM検証クラス
    - * =====================================================================
    - *
    - * JSPファイル内に、指定されたセレクタにマッチするノードが存在(する|しない)かどうかを検証する。
    - *
    - * セレクタは以下のように指定する。なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。
    - * 使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。
    - *
    - * また、field:textなどのウィジェットをセレクタで指定する場合には、"field\\\\:text"と、":"をエスケープして記載する必要があることに注意。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "required": {
    - * >       "ファイル内に必ず一箇所以上はマッチするノードが存在しなくてはいけないセレクタ": "コメント"
    - * >     },
    - * >     "forbidden": {
    - * >       "ファイル内で一致する箇所が存在してはいけないセレクタ": "コメント"
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     "required": {
    - * >     },
    - * >     "forbidden": {
    - * >       "table:not([listSearchInfoName])": "テーブルにはlistSearchInfoNameがないと結果件数が表示されないため、listSearchInfoNameを強制。",
    - * >       "table:not([id])" : "テーブルを複数表示する場合にIDが必須となるため、テーブルにはIDを強制。"
    - * >     }
    - *
    - * @class SelectorBasedVerifier
    - */
    -SelectorBasedVerifier.prototype = {
    -  constructor: SelectorBasedVerifier,
    -  verify: SelectorBasedVerifier_verify,
    -
    -  /**
    -   * マッチしなくてはいけないセレクタのリスト
    -   *
    -   * @param required
    -   * @type Array
    -   * @default []
    -   */
    -  required: [],
    -
    -  /**
    -   * マッチしてはいけないセレクタのリスト
    -   *
    -   * @property forbidden
    -   * @type Array
    -   * @default []
    -   */
    -  forbidden: []
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method SelectorBasedVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **required** 必ずマッチしなくてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。
    - *    * **forbidden** マッチしてはいけないセレクタをキーに持ち、コメントを値としてもつオブジェクト。
    - */
    -function SelectorBasedVerifier(config) {
    -  this.required = Object.extended(config['required']).keys();
    -  this.forbidden = Object.extended(config['forbidden']).keys();
    -}
    -
    -/**
    - * JSPファイル内に、 required に指定されているセレクタにマッチするノードが存在すること、
    - * および、forbiddenに指定されているセレクタにマッチするノードが存在しないことを検証する。
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function SelectorBasedVerifier_verify(jsp, path) {
    -  var $jsp = $('<div>').append($(jsp))
    -    , result;
    -  result = this.required.reduce(function(res, r) {
    -    if ($jsp.find(r).length === 0) {
    -      res.push(new VerificationError('SelectorBasedVerifier', r + ' にマッチするタグが検出されませんでした。', path, ''));
    -    }
    -    return res;
    -  }, []);
    -  result = this.forbidden.reduce(function(res, r) {
    -    var found = $jsp.find(r);
    -    if (found.length !== 0) {
    -      res.push(new VerificationError('SelectorBasedVerifier', r + ' にマッチするタグが検出されました。', path, $('<div>').append(found).html()));
    -    }
    -    return res;
    -  }, result);
    -  return result;
    -}
    -
    -module.exports = SelectorBasedVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_attribute_verifier.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_attribute_verifier.js.html deleted file mode 100644 index fd7474078..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_attribute_verifier.js.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - lib\verifiers\tag_attribute_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\tag_attribute_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , reader = require('../fileutil/tag_file_reader')
    -  , VerificationError = require('../verification_error');
    -
    -/**
    - * タグ属性検証クラス
    - * =====================================================================
    - *
    - * タグに設定されている属性が、tagファイルで実際に定義されている属性かどうかを検証する。
    - *
    - * 下記の設定で、指定されているディレクトリに格納されているタグファイルに対してのみ、属性値の検証が行われる。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "directory": "タグファイルが格納されているディレクトリのパス",
    - * >     "encoding": "タグファイルのエンコーディング"
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     "directory": "C:\\nablarch\\tutorial\\main\\web\\WEB-INF\\tags\\widget",
    - * >     "encoding": "utf-8"
    - *
    - * @class TagAttributeVerifier
    - */
    -TagAttributeVerifier.prototype = {
    -  constructor: TagAttributeVerifier,
    -  verify: TagAttributeVerifier_verify,
    -
    -  /**
    -   * 指定されたディレクトリから読み込んだタグファイルの定義情報
    -   *
    -   * @property definitions
    -   * @type Array
    -   * @default []
    -   */
    -  definitions: null
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method TagAttributeVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **directory** タグファイルが格納されているディレクトリのパス
    - *    * **encoding** タグファイルのエンコーディング
    - */
    -function TagAttributeVerifier(config) {
    -  this.definitions = reader.loadAllTags(config['directory'], config['encoding']);
    -}
    -
    -/**
    - * JSPファイルで使用されているタグの属性が、実際に定義されているものであることを検証する。
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function TagAttributeVerifier_verify(jsp, path) {
    -  var $nodes = $('<div>').append(jsp).find('*')
    -    , self = this
    -    , results = [];
    -
    -  $nodes.each(function(res, node) {
    -    var def = self.definitions.find(function(def) {
    -      return def.name.toLowerCase() === node.name.toLowerCase();
    -    });
    -    if (def) {
    -      var $node = $(node);
    -      Object.each($node.attr(), (function(attr) {
    -        var found = def.attributes.find(function(d) {
    -          return d.name.toLowerCase() === attr.toLowerCase();
    -        });
    -        if (!found) {
    -          results.push(new VerificationError('TagAttributeVerifier', '<' + node.name + '> タグには、' + attr + '属性は定義されていません。定義されているのは、' + dumpAllAttributes(def) + 'です。',  path, $('<div>').append($node).html()))
    -        }
    -      }))
    -    }
    -  });
    -
    -  return results;
    -}
    -
    -function dumpAllAttributes(t) {
    -  return t.attributes.map(function(a){
    -    return a.name;
    -  }).join(', ')
    -}
    -
    -module.exports = TagAttributeVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_usage_verifier.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_usage_verifier.js.html deleted file mode 100644 index 069b84fca..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_tag_usage_verifier.js.html +++ /dev/null @@ -1,238 +0,0 @@ - - - - - lib\verifiers\tag_usage_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\tag_usage_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , VerificationError = require('../verification_error');
    -
    -/**
    - * 使用可能タグ検証クラス
    - * =====================================================================
    - *
    - * JSPファイル内で使用されているタグが、使用可能なタグであるかどうかを検証する。
    - *
    - * 使用可能なタグは、タグ名に完全一致する正規表現として設定ファイルに以下のように記載する。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "allowed_tags": {
    - * >       "許可するタグ名に完全一致する正規表現": "コメント"
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     {
    - * >       "verifiers": {
    - * >         "TagUsageVerifier": {
    - * >           "allowed_tags": {
    - * >             "n:form": ""
    - * >             , "n:set": ""
    - * >             , "n:write": ""
    - * >             , "n:ConfirmationPage": ""
    - * >             , "n:forConfirmationPage": ""
    - * >             , "n:forInputPage": ""
    - * >             , "n:param": ""
    - * >             , "t:page_template": "業務画面のテンプレート"
    - * >             , "t:errorpage_template": "エラー画面のテンプレート"
    - * >             , "box:.*": ""
    - * >             , "button:.*": "ボタンウィジェット"
    - * >             , "field:.*": "入力フォーム部品"
    - * >             , "link:.*": "リンクウィジェット"
    - * >             , "tab:.*": "タブウィジェット"
    - * >             , "table:.*": "テーブルウィジェット"
    - * >             , "c:if": ""
    - * >             , "jsp:attribute": ""
    - * >             , "%@": "JSPディレクティブ"
    - * >             , "%--": "JSPコメント"
    - * >           }
    - * >         }
    - * >       }
    - * >     }
    - *
    - * @class TagUsageVerifier
    - */
    -TagUsageVerifier.prototype = {
    -  constructor: TagUsageVerifier,
    -  verify: TagUsageVerifier_verify,
    -
    -  /**
    -   * 使用可能とするタグ名にマッチする正規表現
    -   *
    -   * @property allowed_tags
    -   * @type Array
    -   * @default []
    -   */
    -  allowed_tags: []
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method TagUsageVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **allowed_tags** 使用可能とするタグ名にマッチする正規表現をキーに持ち、コメントを値としてもつオブジェクト。
    - */
    -function TagUsageVerifier(config) {
    -  this.allowed_tags = this.allowed_tags.concat(Object.extended(config['allowed_tags']).keys());
    -}
    -
    -/**
    - * JSPファイルで使用されている全てのタグが、 `allowed_tags` に指定されているかどうかを検証する。
    - *
    - * なお、以下のUI開発基盤を利用したローカル表示用のマジックコメントは解析対象にならない。
    - *
    - *     <!-- <%/* --> <script src="js/devtool.js"></script><meta charset="utf-8"><body> <!-- * /%> -->
    - *
    - * また、JSPディレクティブについては、下記の置換を行ってディレクティブ名を正規化している。
    - *
    - *     replace(/<%@\s+([a-zA-Z]+)\s/mg, '<%@$1 ')
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function TagUsageVerifier_verify(jsp, path) {
    -  var $tags = $('<div>').append($(jsp)).find('*')
    -    , self = this
    -    , result = []
    -    , message;
    -
    -  $tags.each(function(idx, node) {
    -    var tag = node.name
    -      , isNotAllowed = self.allowed_tags.none(function(allowed) {
    -        return tag.match(new RegExp('^' + allowed + '$', "i"))
    -      });
    -
    -    if (isNotAllowed) {
    -      message = '<{tag}> タグは、JSPファイルでは利用しないでください。'.assign({"tag": tag});
    -      result.push(new VerificationError('TagUsageVerifier', message, path, $('<div>').append(node).html()))
    -    }
    -  });
    -
    -  return result;
    -}
    -
    -module.exports = TagUsageVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_wrapping_tag_verifier.js.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_wrapping_tag_verifier.js.html deleted file mode 100644 index a68f59afd..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/files/lib_verifiers_wrapping_tag_verifier.js.html +++ /dev/null @@ -1,250 +0,0 @@ - - - - - lib\verifiers\wrapping_tag_verifier.js - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -

    File: lib\verifiers\wrapping_tag_verifier.js

    - -
    -
    -"use strict";
    -
    -require('sugar');
    -
    -var $ = require('cheerio')
    -  , VerificationError = require('../verification_error');
    -
    -/**
    - * 親タグ検証クラス
    - * =====================================================================
    - *
    - * 正規表現で指定されたタグ名にマッチするタグの親タグに、指定されているタグが存在(する|しない)かどうかを検証する。
    - *
    - * 検証対象とするタグおよびその親タグは以下のように設定する。
    - *
    - * childは __正規表現__ で指定するが、parentは __セレクタ__ で指定することに注意。
    - * このため、parentにn:formなどの":"を含むタグを指定したい場合には、 "n\\\\:form" のようにエスケープする必要がある。
    - *
    - * なお、jQueryと似たセレクタを使用できるが、完全に互換性があるわけではない。
    - * 使用できるセレクタの詳細が必要な場合には、 http://matthewmueller.github.io/cheerio/ を参照すること。
    - *
    - * > __設定フォーマット (JSON)__
    - * >
    - * >     "required": {
    - * >       "コメント": {
    - * >         "child": "検証対象とするタグにマッチする正規表現",
    - * >         "parent": "childに指定したタグの親に存在しなくてはいけないタグにマッチするセレクタ"
    - * >       }
    - * >     },
    - * >     "forbidden": {
    - * >       "コメント": {
    - * >         "child": "検証対象とするタグにマッチする正規表現",
    - * >         "parent": "childに指定したタグの親に存在してはいけないタグにマッチするセレクタ"
    - * >       }
    - * >     }
    - * >
    - * > __設定ファイル記載例 (verification_config.json)__
    - * >
    - * >     "required": {
    - * >       "tableウィジェットは、n:formで囲む必要がある。": {
    - * >         "child": "table:.*",
    - * >         "parent": "n\\:form"
    - * >       },
    - * >       "buttonウィジェットは、n:formで囲む必要がある。": {
    - * >         "child": "button:.*",
    - * >         "parent": "n\\:form"
    - * >       },
    - * >      "設計書ビューで画面項目定義に表示されるウィジェットは、spec:layoutで囲む必要がある。": {
    - * >        "child": "(table|field|column):.+",
    - * >        "parent": "spec\\:layout"
    - * >      }
    - * >    },
    - * >    "forbidden": {
    - * >    }
    - *
    - * @class WrappingTagVerifier
    - */
    -WrappingTagVerifier.prototype = {
    -  constructor: WrappingTagVerifier,
    -  verify: WrappingTagVerifier_verify,
    -
    -  /**
    -   * 満たさなくてはいけない親子関係のリスト
    -   *
    -   * @param required
    -   * @type Array
    -   * @default []
    -   */
    -  required: [],
    -
    -  /**
    -   * 満たしてはいけない親子関係のリスト
    -   *
    -   * @property forbidden
    -   * @type Array
    -   * @default []
    -   */
    -  forbidden: []
    -};
    -
    -/**
    - * コンストラクタ関数
    - *
    - * @method WrappingTagVerifier
    - * @constructor
    - * @param {Object} config 設定情報を格納したオブジェクト。使用するキーは以下の通り。
    - *
    - *    * **directory** タグファイルが格納されているディレクトリのパス
    - *    * **encoding** タグファイルのエンコーディング
    - */
    -function WrappingTagVerifier(config) {
    -  this.required = Object.extended(config['required']).values();
    -  this.forbidden = Object.extended(config['forbidden']).values();
    -}
    -
    -/**
    - * タグの親子関係を検証する。
    - *
    - * @method verify
    - * @param {String} jsp 検証対象とするJSPファイルの内容
    - * @param {String} path 検証対象ファイルのパス
    - * @return {Array} 検証結果 ({{#crossLink "VerificationError"}}{{/crossLink}}) を格納した配列
    - */
    -function WrappingTagVerifier_verify(jsp, path) {
    -  var $tags = $('<div>').append($(jsp)).find('*')
    -    , self = this
    -    , result = [];
    -  $tags.each(function(idx, t) {
    -    var $t = $(t);
    -    result = self.required.reduce(function(res, r) {
    -      var c = r["child"]
    -        , p = r["parent"];
    -      if(t.name.match(new RegExp('^' + c + '$', 'i')) && $t.parents(p).length === 0) {
    -        res.push(new VerificationError('WrappingTagVerifier', '<' + t.name + '> の親タグに <' + p + '> にマッチするタグが検出されませんでした。', path, $('<div>').append($t).html()));
    -      }
    -      return res
    -    }, result);
    -    result = self.forbidden.reduce(function(res, r) {
    -      var c = r["child"]
    -        , p = r["parent"];
    -      if(t.name.match(new RegExp('^' + c + '$', 'i')) && $t.parents(r["parent"]).length !== 0) {
    -        res.push(new VerificationError('WrappingTagVerifier', '<' + t.name + '> の親タグに <' + p + '> にマッチするタグが検出されました。', path, $('<div>').append($t).html()));
    -      }
    -      return res
    -    }, result)
    -  });
    -  return result;
    -}
    -
    -module.exports = WrappingTagVerifier;
    -
    -    
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/index.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/index.html deleted file mode 100644 index 87d7ba5a9..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/index.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - - - - - - - -
    -
    -
    - -

    - -
    -
    - API Docs for: -
    -
    -
    - -
    - -
    -
    -
    - Show: - - - - - - - -
    - - -
    -
    -
    -
    -
    -

    - Browse to a module or class using the sidebar to view its API documentation. -

    - -

    Keyboard Shortcuts

    - -
      -
    • Press s to focus the API search box.

    • - -
    • Use Up and Down to select classes, modules, and search results.

    • - -
    • With the API search box or sidebar focused, use -Left or -Right to switch sidebar tabs.

    • - -
    • With the API search box or sidebar focused, use Ctrl+Left and Ctrl+Right to switch sidebar tabs.

    • -
    -
    -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/modules/index.html b/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/modules/index.html deleted file mode 100644 index 487fe15b2..000000000 --- a/ja/development_tools/toolbox/_static/jsp_verifier/yuidoc/modules/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - Redirector - - - - Click here to redirect - - diff --git a/ja/development_tools/toolbox/index.rst b/ja/development_tools/toolbox/index.rst index a9e7976ae..70cdba328 100644 --- a/ja/development_tools/toolbox/index.rst +++ b/ja/development_tools/toolbox/index.rst @@ -9,7 +9,6 @@ JspStaticAnalysis/index.rst SqlExecutor/SqlExecutor - JspVerifier/JspVerifier .. _nablarchToolBoxPage: @@ -28,8 +27,6 @@ - JSPで使用を許可する構文とタグを規定し、許可する構文とタグのみを使用していることをチェックするツール。 * - :doc:`SqlExecutor/SqlExecutor` - SQL文を対話的に実行するツール。 - * - :doc:`JspVerifier/JspVerifier` - - 業務画面JSPを検証するツール。 .. |br| raw:: html diff --git a/ja/development_tools/ui_dev/doc/_image/additional_column.png b/ja/development_tools/ui_dev/doc/_image/additional_column.png deleted file mode 100644 index 10169dfa0..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/additional_column.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/app_grid.png b/ja/development_tools/ui_dev/doc/_image/app_grid.png deleted file mode 100644 index c03a8b20f..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/app_grid.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/app_jsp.png b/ja/development_tools/ui_dev/doc/_image/app_jsp.png deleted file mode 100644 index 6c5a134a2..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/app_jsp.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/architecture_overview_local.png b/ja/development_tools/ui_dev/doc/_image/architecture_overview_local.png deleted file mode 100644 index 7034d15c0..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/architecture_overview_local.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/architecture_overview_server.png b/ja/development_tools/ui_dev/doc/_image/architecture_overview_server.png deleted file mode 100644 index 1f8e9443d..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/architecture_overview_server.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/build_css_gen.png b/ja/development_tools/ui_dev/doc/_image/build_css_gen.png deleted file mode 100644 index 8670a714a..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/build_css_gen.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/build_install.png b/ja/development_tools/ui_dev/doc/_image/build_install.png deleted file mode 100644 index a8e299226..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/build_install.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/build_js_gen.png b/ja/development_tools/ui_dev/doc/_image/build_js_gen.png deleted file mode 100644 index 20b6bab78..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/build_js_gen.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/build_ui_build.png b/ja/development_tools/ui_dev/doc/_image/build_ui_build.png deleted file mode 100644 index 9142bf568..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/build_ui_build.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/field_grid.png b/ja/development_tools/ui_dev/doc/_image/field_grid.png deleted file mode 100644 index 55eaa8ee5..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/field_grid.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/images.xlsx b/ja/development_tools/ui_dev/doc/_image/images.xlsx deleted file mode 100644 index b2765ce04..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/images.xlsx and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/images_work.xlsx b/ja/development_tools/ui_dev/doc/_image/images_work.xlsx deleted file mode 100644 index 72bda6609..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/images_work.xlsx and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/multicol/images.xlsx b/ja/development_tools/ui_dev/doc/_image/multicol/images.xlsx deleted file mode 100644 index 367560073..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/multicol/images.xlsx and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/multicol/multicol_1.png b/ja/development_tools/ui_dev/doc/_image/multicol/multicol_1.png deleted file mode 100644 index 91de5d93b..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/multicol/multicol_1.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/multicol/multicol_2.png b/ja/development_tools/ui_dev/doc/_image/multicol/multicol_2.png deleted file mode 100644 index 7a5e3ba8c..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/multicol/multicol_2.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/multicol/multicol_sample_1.png b/ja/development_tools/ui_dev/doc/_image/multicol/multicol_sample_1.png deleted file mode 100644 index 29b93da03..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/multicol/multicol_sample_1.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/multicol/multicol_sample_2.png b/ja/development_tools/ui_dev/doc/_image/multicol/multicol_sample_2.png deleted file mode 100644 index 780386f35..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/multicol/multicol_sample_2.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/project_structure1.png b/ja/development_tools/ui_dev/doc/_image/project_structure1.png deleted file mode 100644 index b2256950a..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/project_structure1.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/project_structure2.png b/ja/development_tools/ui_dev/doc/_image/project_structure2.png deleted file mode 100644 index 59ec51c1a..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/project_structure2.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/project_structure3.png b/ja/development_tools/ui_dev/doc/_image/project_structure3.png deleted file mode 100644 index 3c8c8bc37..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/project_structure3.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/rendering_function.png b/ja/development_tools/ui_dev/doc/_image/rendering_function.png deleted file mode 100644 index 32f93c343..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/rendering_function.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/rendering_image.png b/ja/development_tools/ui_dev/doc/_image/rendering_image.png deleted file mode 100644 index 294f07443..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/rendering_image.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/ui_demo_menu.png b/ja/development_tools/ui_dev/doc/_image/ui_demo_menu.png deleted file mode 100644 index 262b66266..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/ui_demo_menu.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/ui_demo_server_indexpage.png b/ja/development_tools/ui_dev/doc/_image/ui_demo_server_indexpage.png deleted file mode 100644 index d8a60b4a0..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/ui_demo_server_indexpage.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/ui_demo_server_preview.png b/ja/development_tools/ui_dev/doc/_image/ui_demo_server_preview.png deleted file mode 100644 index adfe62386..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/ui_demo_server_preview.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/ui_demo_test.png b/ja/development_tools/ui_dev/doc/_image/ui_demo_test.png deleted file mode 100644 index 33bb73b7b..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/ui_demo_test.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/ui_demo_top.png b/ja/development_tools/ui_dev/doc/_image/ui_demo_top.png deleted file mode 100644 index b2cc389ea..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/ui_demo_top.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/ui_standard_color_scheme_sample.png b/ja/development_tools/ui_dev/doc/_image/ui_standard_color_scheme_sample.png deleted file mode 100644 index 586aa0345..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/ui_standard_color_scheme_sample.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/ui_test_server_indexpage.png b/ja/development_tools/ui_dev/doc/_image/ui_test_server_indexpage.png deleted file mode 100644 index 96fafeb20..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/ui_test_server_indexpage.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/ui_test_server_top.png b/ja/development_tools/ui_dev/doc/_image/ui_test_server_top.png deleted file mode 100644 index bcfc8053d..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/ui_test_server_top.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_image/workflow.png b/ja/development_tools/ui_dev/doc/_image/workflow.png deleted file mode 100644 index 155e8527f..000000000 Binary files a/ja/development_tools/ui_dev/doc/_image/workflow.png and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/_static/known_issues.xlsx b/ja/development_tools/ui_dev/doc/_static/known_issues.xlsx deleted file mode 100644 index 453f2aa4f..000000000 Binary files a/ja/development_tools/ui_dev/doc/_static/known_issues.xlsx and /dev/null differ diff --git a/ja/development_tools/ui_dev/doc/about_this_book.rst b/ja/development_tools/ui_dev/doc/about_this_book.rst deleted file mode 100644 index 2bf33fbd9..000000000 --- a/ja/development_tools/ui_dev/doc/about_this_book.rst +++ /dev/null @@ -1,7 +0,0 @@ -------------------------- -本書の内容 -------------------------- -本書は、NablarchにおけるUI開発基盤に関する解説書である。 -主に本機能を採用するPJのアーキテクト向けに、本機能のグランドデザイン、 -アーキテクチャの詳細、カスタマイズ方法について記述している。 - diff --git a/ja/development_tools/ui_dev/doc/book_layout.rst b/ja/development_tools/ui_dev/doc/book_layout.rst deleted file mode 100644 index 5583723d0..000000000 --- a/ja/development_tools/ui_dev/doc/book_layout.rst +++ /dev/null @@ -1,27 +0,0 @@ -============================ -本書の構成 -============================ -本書は以下の5つの章で構成されている。 -最初から通読することを意識した内容となっているが -各章の内容は独立しており、必要な章のみ個別に読み進めてもよい。 - -**I: はじめに** - 本機能の特徴および採用PJへのメリット・デメリット、採用の前提条件などについて解説する。 - -**II: 開発作業手順** - この章では、プロジェクトのアーキテクトがUI開発基盤に関連して行うタスクについて - 具体的な手順レベルで解説する。 - -**III: プロジェクトのファイル構成と変更管理** - この章では、UI開発基盤を採用したプロジェクトにおける標準的なファイル構成および変更管理について述べる。 - また、UI開発基盤側のアップデートの取り込み方法についても解説する。 - -**IV: アーキテクチャ詳説** - この章では、UI開発基盤を構成する各機能について技術的な面から詳細に解説する。 - -**V: リファレンス** - 使用可能なプラグイン、ウィジェットやAPIなどの一覧。 - -**VI: 補足資料** - その他、開発時に参照すべき資料。 - diff --git a/ja/development_tools/ui_dev/doc/development_environment/initial_setup.rst b/ja/development_tools/ui_dev/doc/development_environment/initial_setup.rst deleted file mode 100644 index 72f52ce82..000000000 --- a/ja/development_tools/ui_dev/doc/development_environment/initial_setup.rst +++ /dev/null @@ -1,560 +0,0 @@ -=================================== -UI開発基盤の導入 -=================================== - -本節では、Nablarch UI開発基盤をプロジェクトの開発環境に導入する手順を述べる。 -UI開発基盤の導入時に以下の手順を実施すればよく、各担当者が個別に実施する必要はない。 - -以下の手順で使用するインストール用コマンドの詳細仕様については、 -:doc:`../plugin_build` を参照すること。 - -.. tip:: - - 本節では、UI開発基盤用プロジェクトテンプレートを使用したUI開発基盤の導入手順を記載している。 - UI開発基盤用プロジェクトテンプレートは :doc:`../internals/css_framework` を使用しているため、 - :doc:`../internals/multicol_css_framework` を使用する場合には、 :ref:`apply-multicol-layout` - を参考に設定すること。 - -.. tip:: - - 開発作業手順はUI開発基盤を導入したプロジェクトが構成管理にSubversionを使用する想定で記載している。 - Gitを使用する場合はプロジェクト構成やコマンド名などを読み替えること。 - - -0. 事前準備 -=================================== - -1. Node.jsのインストール ----------------------------------------------------------- - -本節の作業をするには Node.js のインストールが必要である。 -インストールイメージを下記URL(2016/10時点)から取得し、インストールする。 - - http://nodejs.org/dist/v0.10.26/ - -バージョンによってはUI開発基盤が動作しないため、動作検証済みのバージョンである 0.10.26 の使用を推奨する。 - -.. tip:: - - なお **Node.js** を必要とするのは初期環境構築をするアーキテクトのみである。 - 通常の設計・開発担当者はインストール不要である。 - -2. 環境変数 **JAVA_HOME** の設定 ----------------------------------------------------------- - -本節で使用する :ref:`ui_demo` は環境変数 **JAVA_HOME** の設定が前提となっているため、 -環境変数 **JAVA_HOME** にJDKのインストールディレクトリパスを設定する。 - - -1. プロジェクトの作成 -=================================== -下記手順を実行することにより、UI開発基盤を使用するためのプロジェクトを作成する。 -作成したプロジェクトの構成は以下のようになる。 - -.. tip:: - - ここでは、プロジェクト名は仮想のプロジェクト名(web_project)で示す。 - -.. code-block:: bash - - プロジェクトルート/ - │ - ├── nablarch_plugins_bundle/ - │ ├── bin/ - │ │ ├── setup.bat - │ │ └── install.bat - │ ├── node_modules/ - │ │ ├── nablarch-css-base - │ │ ├── nablarch-css-color-default - │ │ ├── nablarch-css-common - │ │ │ - │ │ ## 後略 ## - │ │ - │ └── package.json - │ - └── web_project/ - ├── web/ - ├── ui_demo/ - ├── ui_plugins/ - │ └── package.json - └── ui_test/ - -.. tip:: - - ここで展開される各ディレクトリの内容については - :doc:`../structure/directory_layout` で解説する。 - - -1. プロジェクトルートの作成 ----------------------------------------------------------- - -ローカルマシン上の任意の場所にプロジェクトルートとなるディレクトリを新規作成する。 - - -2. UI開発基盤の取得 ----------------------------------------------------------- - -「git clone」コマンドでUI開発基盤を取得し、プロジェクトルート直下に配置する。 -以下にコマンド例を示す。 - -.. code-block:: bash - - cd <<プロジェクトルート>> - git clone https://github.com/nablarch/nablarch-plugins-bundle.git - -.. _clone_project_template: - -3. UI開発基盤用プロジェクトテンプレートの取得 ----------------------------------------------------------- - -「git clone」コマンドでUI開発基盤用プロジェクトテンプレートを取得し、プロジェクトルート直下に配置する。 -以下にコマンド例を示す。 - -.. code-block:: bash - - cd <<プロジェクトルート>> - git clone https://github.com/nablarch/nablarch-ui-development-template.git web_project - - -4. ブランクプロジェクトのセットアップ ----------------------------------------------------------- - - :ref:`clone_project_template` で取得したプロジェクトテンプレートにブランクプロジェクトをセットアップする。 - セットアップ方法は、 :doc:`../../../../application_framework/application_framework/blank_project/setup_blankProject/setup_Web` を参照すること。 - -.. tip:: - - ここでは、ブランクプロジェクトを生成する際、 ``artifactId`` に `web` と指定すること。 - -.. tip:: - - mavenのインストールや設定をしていない場合には、以下を参考にそれぞれを実施してからセットアップを行うこと。 - - * :doc:`../../../../application_framework/application_framework/blank_project/maven` - * :doc:`../../../../application_framework/application_framework/blank_project/beforeFirstStep` - - -2. Nablarch UI開発基盤のインストール -======================================== -下記手順を実行することにより、Nablarch標準プラグインバンドルの内容と、 -各プラグインが依存するサードパーティ製ライブラリがプロジェクトルート配下に取り込まれる。 - -.. _initial_setup_plugin_setup: - -1. プラグインのセットアップ ----------------------------------------------------------- - -`nablarch_plugins_bundle/bin/setup.bat` を実行する。 - -.. tip:: - - プロキシ配下でインターネットに接続している場合には、 - 以下の環境変数にプロキシのアドレスを設定すること。 - - * **http_proxy** :例)http_proxy=http://proxy.example.com:8080 - * **https_proxy** :例)https_proxy=http://proxy.example.com:8080 - - -プラグインのセットアップが実行され、以下のようなログが表示される。 - -.. code-block:: bash - - >setup.bat - - >cd <<プロジェクトルート>>/nablarch-plugins-bundle/bin/ - - >call mvn clean compile dependency:copy-dependencies -f ../node_modules/nablarch-dev-tool-server/ui_test/pom.xml - [INFO] Scanning for projects... - [INFO] - [INFO] ------------------------------------------------------------------------ - [INFO] Building nablarch-dev-tool-server 1.0.0 - [INFO] ------------------------------------------------------------------------ - - ### 中略 ### - - [INFO] ------------------------------------------------------------------------ - [INFO] BUILD SUCCESS - [INFO] ------------------------------------------------------------------------ - [INFO] Total time: 1.949 s - [INFO] Finished at: 2016-10-05T16:30:40+09:00 - [INFO] Final Memory: 21M/211M - [INFO] ------------------------------------------------------------------------ - npm WARN package.json nablarch-css-base@1.0.0 No repository field. - npm WARN package.json nablarch-css-base@1.0.0 No README data - - ### 中略 ### - - npm http 200 https://registry.npmjs.org/boom - npm http GET https://registry.npmjs.org/delayed-stream/0.0.5 - npm http 304 https://registry.npmjs.org/delayed-stream/0.0.5 - shelljs@0.2.6 node_modules/shelljs - - requirejs@2.1.11 node_modules/requirejs - - sugar@1.4.1 node_modules/sugar - - jquery@1.11.0 node_modules/jquery - - less@1.4.2 node_modules/less - ├── mkdirp@0.3.5 - ├── mime@1.2.11 - ├── ycssmin@1.0.1 - └── request@2.34.0 - - font-awesome@4.0.3 node_modules/font-awesome - > - -`nablarch_plugins_bundle/bin/setup.bat` では以下の二つの処理を行っており、 -セットアップ後の状態はそれぞれ以下のようになる。 - -* :ref:`ui_test_server` で使用するモジュールのビルド - - `nablarch-plugins-bundle/node_modules/nablarch-dev-tool-server/ui_test/tools` 配下に - サーバ動作確認用のバイナリとライブラリが追加される。 - - .. code-block:: bash - - プロジェクトルート/ - │ - ├── nablarch_plugins_bundle/ - │ ├── node_modules/ - │ │ ├── nablarch-dev-tool-server - │ │ │ ├── ui_test - │ │ │ │ ├── tools - │ │ │ │ │ ├── bin # (追加) - │ │ │ │ │ ├── lib # (追加) - ## (後略) ## - -* サードパーティライブラリの取得 - - `nablarch_plugins_bundle/node_modules` 配下に - サードパーティライブラリが追加される。 - - .. code-block:: bash - - プロジェクトルート/ - │ - ├── nablarch_plugins_bundle/ - │ ├── bin/ - │ │ ├── setup.bat - │ │ └── install.bat - │ ├── doc/ - │ ├── guide/ - │ ├── node_modules/ - │ │ ├── es6-promise - │ │ ├── font-awesome # (追加) - │ │ ├── jquery # (追加) - │ │ ├── less # (追加) - │ │ ├── nablarch-css-base - │ │ ├── nablarch-css-color-default - │ │ ├── nablarch-css-common - │ │ │ - ## (後略) ## - - -2. プロジェクトで使用するプラグインの選定 ---------------------------------------------------- -`web_project/ui_plugins/package.json` を任意のテキストエディタで開く。 - -このファイルは以下のような構造を持ち、プロジェクトで使用する -:doc:`../structure/plugins` の名称とそのバージョンが列挙されている。 - -.. code-block:: javascript - - //---- 前略 ----// - - "dependencies": - { "requirejs" : "2.1.11" - , "sugar" : "1.4.1" - , "jquery" : "1.11.0" - , "requirejs-text": "2.0.10" - , "font-awesome": "4.0.3" - , "nablarch-css-color-default": "1.0.0" - , "nablarch-css-core": "1.0.0" - , "nablarch-css-conf-wide": "1.0.0" - , "nablarch-css-conf-compact": "1.0.0" - , "nablarch-css-conf-narrow": "1.0.0" - - //---- 中略 ----// - - , "nablarch-template-head": "1.0.0" - , "nablarch-template-js_include": "1.0.0" - , "nablarch-template-page": "1.0.0" - } - - //---- 後略 ----// - -このエントリを削除することによって、プロジェクト側で使用しないプラグインを -インストールの対象から除去できる。 -各プラグインの内容については :doc:`../structure/plugins` の項を参照すること。 - -削除したプラグインがlessファイルを含んでいる場合、プロジェクトではそのlessファイルも -使用できなくなるため、 :ref:`lessImport_less` から、当該プラグインのlessファイルの -import定義を削除する必要がある。 - -:ref:`lessImport_less` には、以下のようにプロジェクトが各表示モードで使用するlessファイルの -import定義が列挙されている。 - -.. code-block:: css - - @import "../../node_modules/nablarch-css-core/ui_public/css/core/reset"; - @import "../../node_modules/nablarch-css-core/ui_public/css/core/css3"; - @import "../../node_modules/nablarch-css-core/ui_public/css/core/grid"; - - //---- 中略 ----// - - @import "../../node_modules/web_project-template-app_nav/ui_public/css/template/topnav"; - @import "../../node_modules/web_project-template-app_nav/ui_public/css/template/topnav-wide"; - @import "../../node_modules/web_project-template-error/ui_public/css/template/errorpage"; - -上記で削除したプラグインに対応するlessファイルは、それぞれの :ref:`lessImport_less` から削除する必要がある。 -本手順の場合は、以下の6ファイルから削除する。 - -* `web_project/ui_plugins/css/ui_local/compact.less` -* `web_project/ui_plugins/css/ui_local/narrow.less` -* `web_project/ui_plugins/css/ui_local/wide.less` -* `web_project/ui_plugins/css/ui_public/compact.less` -* `web_project/ui_plugins/css/ui_public/narrow.less` -* `web_project/ui_plugins/css/ui_public/wide.less` - -.. tip:: - - 使用するプラグインの選別は、開発中であっても随時実施可能である。 - ただ、その場合でも、開発チーム側での誤用を避けるため、 - 使用しないプラグインはなるべく早い段階で除いておくことが望ましい。 - - -3. プロジェクトへのプラグインインストール ---------------------------------------------------- -インストールコマンドにプロジェクトルートを設定し実行する。 -(コマンドの詳細については :doc:`../plugin_build` を参照) - -**1. PROJECT_ROOTの設定** - `nablarch_plugins_bundle/bin/install.bat` を任意のテキストエディタで開き、 - コメントアウトされているプロジェクトルートを以下のように設定する。 - -.. code-block:: bat - - @setlocal - - cd %~dp0 - @echo off - set PROJECT_ROOT=../../web_project # (設定) - ###(後略)### - -**2. インストールコマンドの実行** - `nablarch_plugins_bundle/bin/install.bat` を実行する。 - -.. tip:: - - なお、このスクリプトは完了までに通常5から10分程度の時間がかかる。 - -以下のようなログが表示される。 - -.. code-block:: bash - - > install.bat - setup plugin: ../node_modules/es6-promise - setup plugin: ../node_modules/font-awesome - setup plugin: ../node_modules/jquery - setup plugin: ../node_modules/less - - ## (中略) ## - - npm http 200 http://127.0.0.1:3000/nablarch-css-conf-compact/-/nablarch-css-conf-compact-1.0.0/package.tgz - npm http 200 http://127.0.0.1:3000/nablarch-css-conf-wide/-/nablarch-css-conf-wide-1.0.0/package.tgz - nablarch-css-conf-compact@1.0.0 node_modules/nablarch-css-conf-compact - nablarch-css-conf-narrow@1.0.0 node_modules/nablarch-css-conf-narrow - nablarch-css-conf-wide@1.0.0 node_modules/nablarch-css-conf-wide - - halting local repository ... - - ... local repository shutdown. - > - -この処理により、先の手順で **package.json** に指定されていたプラグインが -`web_project/ui_plugins/node_modules` 配下にインストールされる。 - -.. code-block:: bash - - プロジェクトルート/ - │ - ├── nablarch_plugins_bundle/ - │ │ - │ │ - │ ##(後略)## - │ - └── web_project/ - ├── web/ - ├── ui_demo/ - ├── ui_plugins/ - │ ├── .npm/ # (追加) - │ ├── package.json - │ ├── bin/ - │ │ - │ └── node_modules/ - │ ├── jquery/ # (追加) - │ ├── less/ # (追加) - │ ├── nablarch-css-base/ # (追加) - │ ├── nablarch-css-color-default/ # (追加) - │ ├── nablarch-css-common/ # (追加) - │ │ - │ ##(後略)## - │ - └── ui_test/ - - -.. _executing_ui_build: - -4. UI部品のビルドと配置 ---------------------------------------------------- -ビルドコマンド用設定ファイルにデプロイ対象プロジェクトを設定しUIビルドコマンドを実行する。 -(設定ファイルとコマンドの詳細については :doc:`../plugin_build` を参照) - -**1. デプロイ対象プロジェクトの設定** - `web_project/ui_plugins/pjconf.json` を任意のテキストエディタで開き、 - デプロイ対象プロジェクト(pathSettings/webProjectPath)を以下のように設定する。 - -.. code-block:: javascript - - { - "pathSettings" : - { "projectRootPath" : "../.." - , "webProjectPath" : "web/src/main/webapp" // (設定) - , "demoProjectPath" : "ui_demo" - , "testProjectPath" : "ui_test" - , "pluginProjectPath" : "ui_plugins" - } - // ###(後略)### - -**2. UIビルドコマンドの実行** - `web_project/ui_plugins/bin/ui_build.bat` を実行する。 - - これにより `web_project` 配下の以下のディレクトリに各プラグインから抽出された - UI資源が展開される。 - - =========== ===================================== ======================================================================================== - パス 名称 用途 - =========== ===================================== ======================================================================================== - ui_demo/ 業務画面モック開発用プロジェクト | 主に設計工程で作成する業務画面JSPを格納するプロジェクト。 - | サーバサイドの仕組みなしで、画面の表示や動作のデモを行うことができる。 - | 使用方法については、 :ref:`ui_dev-howto_make_jsp` を参照すること。 - - ui_test/ UI開発基盤テスト用プロジェクト | UI開発基盤自体の開発に用いるテストスイートを格納するプロジェクト。 - | プロジェクト側でUI基盤のカスタマイズを行う際に、既存機能への影響を確認する場合に - 使用することができる。 - | また、UI基盤部品で問題が発生した場合に、Nablarchの標準プラグインの問題なのか、 - PJ側でのカスタマイズの問題なのかを確認する際にも使用する。 - - web/ デプロイ対象プロジェクト | 実際にサーバ環境にデプロイされる資源を格納するプロジェクト。 - - =========== ===================================== ======================================================================================== - - -5. UIローカルデモ用プロジェクトの動作確認 ---------------------------------------------------- -`web_project/ui_demo/ローカル画面確認.bat` -を実行すると、ブラウザが起動し、以下の画面が表示される。 - -.. figure:: ../_image/ui_demo_server_indexpage.png - :scale: 80 - :align: center - -この画面には `web_project/ui_demo` 配下にある全てのJSPファイルへのリンクが -表示される。 -各リンクを開くことで、当該画面のJSPがJavaScriptによって解釈され、 -下記のようなデモ画面を表示できる。 - -.. figure:: ../_image/ui_demo_server_preview.png - :scale: 80 - :align: center - -.. _ui_test_server: - -6. UI開発基盤テスト用プロジェクトの動作確認 ---------------------------------------------------- -`web_project/ui_test/サーバ動作確認.bat` -を実行すると、ブラウザが起動し、以下の画面が表示される。 - -.. figure:: ../_image/ui_test_server_top.png - :scale: 80 - :align: center - -コマンドを実行したコンソール内に以下のようなメッセージが表示されるのを確認できるまで待つ。 - -.. code-block:: bash - - 2014-05-05 16:28:24.022:INFO::Logging to STDERR via org.mortbay.log.StdErrLog - 2014-05-05 16:28:24.058:INFO::jetty-6.1.24 - 2014-05-05 16:28:24.300 -INFO- ROO [null] load component config file. file = classpath:web-component-configuration.xml - 2014-05-05 16:28:24.331 -INFO- ROO [null] [nablarch.fw.web.servlet.NablarchServletContextListener#contextInitialized] initialization completed. - 2014-05-05 16:28:24.383:INFO::Started SocketConnector@0.0.0.0:7777 - -メッセージが確認できたら -ブラウザに表示されているリンクを押すと、以下のような画面に遷移する。 - -.. figure:: ../_image/ui_test_server_indexpage.png - :scale: 80 - :align: center - -左のメニューから、各UI部品の動作確認用ページに遷移できる。 - - -7. 開発リポジトリへの登録 ---------------------------------------------------- -ここまでセットアップした開発基盤を、リポジトリに登録する。 - -.. important:: - - ここでリポジトリへの登録を怠ると、以降のプロジェクト側で行うカスタマイズと、 - Nablarch開発元で行う改修とを正しくマージすることが困難、もしくは不可能となるので、 - 必ず実施すること。 - - -**1. UI開発基盤インストール作業ファイルの削除** - 下記のディレクトリおよびその配下のファイルについては、 - インストール作業完了後は不要となるので、コミット前に削除しておく。 - - - **nablarch_plugins_bundle/** - - **web_project/ui_plugins/.npm/** - -**2. コミット** - 上述の削除により、プロジェクトのファイル構成は以下の図のようになる。 - これをプロジェクトのリポジトリにコミットする。 - -.. code-block:: bash - - プロジェクトルート/ - │ - └── web_project/ - ├── web/ - │ │ - │ ##(後略)## - │ - ├── ui_demo/ - │ ├── .project - │ │ - │ ##(後略)## - │ - ├── ui_plugins/ - │ ├── package.json - │ ├── bin/ - │ │ ├── ui_build.bat - │ │ ├── ui_build.sh - │ │ │ - │ │ - │ └── node_modules/ - │ ├── jquery/ - │ ├── less/ - │ ├── nablarch-css-base/ - │ ├── nablarch-css-color-default/ - │ ├── nablarch-css-common/ - │ │ - │ ##(後略)## - │ - └── ui_test/ - ├── .project - ├── .classpath - │ - ##(後略)## - diff --git a/ja/development_tools/ui_dev/doc/development_environment/modifying_code_and_testing.rst b/ja/development_tools/ui_dev/doc/development_environment/modifying_code_and_testing.rst deleted file mode 100644 index f2733a3c6..000000000 --- a/ja/development_tools/ui_dev/doc/development_environment/modifying_code_and_testing.rst +++ /dev/null @@ -1,212 +0,0 @@ -=============================================== -UI標準のカスタマイズとUI開発基盤への反映 -=============================================== - -UI標準のカスタマイズ -=============================== - -UI開発基盤が提供する機能は、 Nablarchが提供する **UI標準** に準拠するように実装されている。 - -このUI標準は、プロジェクトのUI標準策定のためのたたき台となるものである。 -初回提案時にはこのUI標準をそのままに近い形でもちこんで、顧客要望を取り込みながら修正していくことになるが、 -その際、UI標準に対する変更点をUI開発基盤に随時反映させていく必要がある。 - -このように、UI部品に関する修正は必ず **UI標準** の修正に対して行われるべきものである。 - -すなわち、 - - **(顧客要望)** → **(UI標準修正)** → **(顧客承認)** → **(UI開発基盤の修正)** - -というフローを必ず経る必要がある。 - -このプロセスが重要なのは、PJに関わる顧客を含めた全ての担当者に対して -UIの変更に関する以下の事実を強く認識させるという点にある。 - -**1. UI標準を修正すると、全画面に影響が発生する** - 機能や画面単位での個別調整は認められない。 - -**2. UI標準の修正にはコストが発生する** - デフォルトのUI標準に従った場合、その実装コストは **無料** である。 - -UI開発基盤の修正 -================================= -ここでは、UI開発基盤を修正する際に必要となる具体的な作業について述べる。 - -1. 修正要件の確認 ------------------------ -前節でも述べたように、UI部品の修正は原則として **UI標準** の変更に対して実施されるものである。 -従って、修正作業の前に **UI標準** の変更内容を確認する。 - -.. important:: - - **UI標準** に反映されない修正をアドホックに行うことは、プロジェクトの破綻につながるリスク要因であるから - 真に慎むこと。 - -.. tip:: - - 特に、この変更内容が **UI標準** の変更履歴として記載されていることを確認すること。 - 修正内容のコミットログにこの変更履歴番号を入力することによりトレーサビリティーを確保できる。 - -2. 修正箇所の特定 ----------------------- -次に、前節で確認した **UI標準** の変更をUI開発基盤の実装に反映するために、どこを修正すればよいかを調査する。 -これには以下の2つの方法がある。 - -**1. 「UI標準修正事例一覧」から類似事例を探す** - 巻末の :doc:`../reference_ui_standard/index` では **UI標準** の典型的な変更要望について、 - 具体的な修正内容とその影響範囲について解説している。 - - この中に、今回の修正内容に類似する案件がある場合は、その内容を参考にして修正を実施すること。 - -**2. 「UIプラグイン一覧」から対象機能を実装するプラグインを探す** - :doc:`../reference_ui_standard/index` に類似する案件が存在しない場合は、 - :doc:`../reference_ui_plugin/index` を参照し、今回の修正対象機能がどのプラグインによって実装されているかを確認し、 - 修正対象の絞り込みを行う。 - -上記のいずれの方法でも、修正対象となるUIプラグインが決まる。 - -.. _add_plugin: - -3. プラグインの追加 ---------------------------- -既存のプラグインを修正する場合でも新たに追加する場合でも、既存のプラグインを別名でコピーし、それに対して修正する。 -(新規追加する場合ははなるべく類似のプラグインをコピー元とする。) - -.. tip:: - - Nablarch提供のプラグインをそのまま修正してしまうと、不具合対応などによるNablarch UI開発基盤の更新時に - Nablarchでの修正内容と、プロジェクトでの修正内容が混ざってしまい、マージ作業が困難になる。 - - そのため、プロジェクトでプラグインを修正するなどの作業の際には、プロジェクトのプラグインとしてコピーしてから - 修正する手順としている。 - -以下示す手順は、 -画面の共通カラースキームを定義するプラグイン **nablarch-css-color-default** を修正し、 -プロジェクト固有の配色に変更する例である。 - -**手順1: 修正元プラグインをコピーして新規プラグインを追加する** - 下図のように、修正対象のプラグイン(**nablarch-css-color-default**)を - 別名(**xxx_project-css-color-default**)でコピーする。 - - なお、プロジェクト側で修正したプラグインにはプロジェクト名に相当するプレフィックスを付加すること。 - (この例では **xxx_project-** がプレフィックスに相当) - - .. code-block:: bash - - └── xxx_project/ - ├── web/ - │ │ - │ ##後略## - │ - ├── ui_demo/ - │ │ - │ ##後略## - │ - ├── ui_plugins/ - │ ├── package.json - │ ├── pjconf.json - │ ├── bin/ - │ │ ├── ui_build.bat - │ │ │ - │ │ ##後略## - │ │ - │ └── node_modules/ - │ ├── jquery/ - │ ├── ... - │ ├── nablarch-css-color-default/ ## コピー元プラグイン - │ ├── ... - │ ├── xxx_project-css-color-default/ ## 追加プラグイン - │ │ - │ ##後略## - │ - ##後略## - -**手順2: package.jsonの内容を修正する** - 追加したプラグインディレクトリ直下にあるpackage.jsonを修正する。 - - 修正するポイントは以下の3点。 - - 1. **手順1**\ で設定したプラグイン名を、nameキーに設定する。 - 2. descriptionキーにはプラグインの概要を記述する。 - 3. _fromキーにコピー元のプラグイン名\@x.x.xを記載する。 - - 以下に例を示す:: - - { - "name": "xxx_project-css-color-default", - "version": "1.0.0", - "description": "xxxプロジェクト用カラースキーム", - "_from": "nablarch-css-color-default@1.0.0", - "dependencies": { - } - } - -**手順3: 以降のマージ作業のために、上記までの変更でリポジトリにコミットする** - - :doc:`./update_bundle_plugin` 時のマージ作業で、PJの修正前の状態を元にPJの変更とNablarchの変更を取り込むため - - **手順2** が完了した時点で、カスタマイズするプラグイン群をリポジトリにコミットする。 - -**手順4: 追加したプラグインを使用するように設定を変更する** - -* プロジェクト直下の **pjconf.json** を修正し、下記の行を追記する。 - これにより、新規に作成したプラグインが有効となる。 - (設定ファイルの詳細については :doc:`../plugin_build` を参照) - - .. code-block:: javascript - - , "plugins" : - [ { "pattern": "nablarch-css-.*" } - , { "pattern": "nablarch-device-.*" } - // (中略) - , { "pattern": "font-awesome"} - , { "pattern": "less"} - , { "pattern": "xxx_project-.*"} // <-- この行を追加 - ] - - .. tip:: - - 複数のプラグインが同一のリソースを含む場合は、 - 上記エントリの下側に記述したプラグインが優先される。(後勝ち) - プロジェクト側で作成したプラグインは基本的に最優先扱いとなるはずなので、 - この例のようにエントリの一番最後に追加する。 - -* :ref:`lessImport_less` に、追加したプラグインのlessファイルを追加する。 - コピー元のプラグインを読み込むと不要なスタイルが設定されてしまうため、コピー元のimport定義は必ず削除する。 - - -**手順5: 追加したプラグインの内容を修正** - 追加したプラグインの内容を必要に応じて修正する。 - - 今回追加した **xxx_project-css-color-default** のフォルダ構成は以下のようになっている。 - - .. code-block:: bash - - xxx_project-css-color-default/ # 新規追加プラグイン - ├── package.json - └── ui_public/ - └── css/ - └── color/ - └── default-color-scheme.less #修正対象ファイル - - 画面配色の設定は default-color-scheme.less にあるので、これを適宜修正する。(下図) - - .. code-block:: java - - // Nablarchブランドカラーを基調とした配色設定 - @baseColor : rgb(255, 255, 255); // 白 - @mainColor1 : rgb(235, 92, 21); // オレンジ - @mainColor2 : rgb(76, 42, 26); // こげ茶 - @subColor : rgb(170, 10, 10); // 赤 - -4. ビルドと修正確認 ------------------------------ -以降の手順については、 :doc:`./initial_setup` の :ref:`executing_ui_build` と同じなので、 -そちらを参照すること。 - - -5. リポジトリへの反映 ------------------------------ -画面設計担当者や業務画面の開発者はビルド後のファイルを元に作業するため、 -ビルドした結果をリポジトリに反映すること。 - diff --git a/ja/development_tools/ui_dev/doc/development_environment/redistribution.rst b/ja/development_tools/ui_dev/doc/development_environment/redistribution.rst deleted file mode 100644 index e3f82c485..000000000 --- a/ja/development_tools/ui_dev/doc/development_environment/redistribution.rst +++ /dev/null @@ -1,125 +0,0 @@ -==================================== -UI開発基盤の展開 -==================================== -本節では、前節 :doc:`../development_environment/initial_setup` -で作成した開発基盤をプロジェクト内に展開する方法について述べる。 -開発基盤の用途は、その目的によって以下の3つにわかれる。 - -**1.画面設計担当者向けワークスペース** - 外部設計工程において、業務画面設計者が作業するためのワークスペース。 - -**2.開発担当者向けワークスペース** - PG/UT工程において、画面機能の実装担当者が作業するためのワークスペース。 - -**3.UIデモ実行用アーカイブ** - 業務画面のUIデモを実施するためのアーカイブ。 - 本ファイルとブラウザがあれば、UIデモを実施できる。 - 客先に送信して、ミーティングで使用したり、 - 開発リポジトリに直接アクセスできない顧客側の担当者に - UIを直接確認してもらう場合などに用いる。 - -ここでは、用途に応じた開発基盤の取得方法について述べる。 - -画面設計担当者向けワークスペースの取得 -========================================= -画面設計担当者向けワークスペースは、前節で作成したリポジトリの -**ui_demo/** ディレクトリ(下図)をローカルディスクの任意の位置にチェックアウトする。 - -.. code-block:: bash - - プロジェクトルート/ - │   - └── web_project/ - ├── web/ - ├── ui_demo/ #### ← ここからチェックアウト#### - │   ├── .project - │   ├── ローカル画面確認.bat - │   │ - │ - ├── ui_plugins/ - └── ui_test/ - -.. tip:: - - チェックアウトしたワークスペースの使用方法については :ref:`ui_dev-howto_make_jsp` を参照すること。 - - -開発担当者向けワークスペースの展開 -========================================= -開発担当者向けワークスペースは、前節で作成したリポジトリの -**web_project/** ディレクトリ(下図)をローカルディスクの任意の位置にチェックアウトする。 - -.. code-block:: bash - - プロジェクトルート/ - │   - └── web_project/ #### ← ここからチェックアウト#### - ├── web/ - │   ├── .classpath - │   ├── .project - │   │ - │   - ├── ui_demo/ - │   ├── .project - │   ├── ローカル画面確認.bat - │   │ - │   - ├── ui_plugins/ - └── ui_test/ -    ├── .classpath -    ├── .project -    │ - -.. tip:: - - Eclipseを使用する場合、 ui_plugins/tool/wtptoolをantで実行すると、ui_plugins配下のjsp, tagファイルの入力補完や構文チェックが有効になる。 - -.. important:: - - リクエスト単体テストでhtmlを確認したとき動的読み込み(XHR)が許可されず、JavaScriptが動作しないため、 - 開発担当者向けワークスペースに展開する前には - `main/webapp/WEB-INF/include/js_include.jsp` を確認し、本番用に切り替えること。(minifyされたjsファイルを読み込むようにする。) - - -UIデモ実行用アーカイブの作成 -========================================= - -作成手順 ----------------------- - -1. UI開発基盤リポジトリの **ui_demo/** ディレクトリ(下図)をローカルディスクの任意の位置にエクスポートする。 - -.. code-block:: bash - - プロジェクトルート/ - │   - └── web_project/ - ├── web/ - ├── ui_demo/ #### ← ここからエクスポート#### - │   ├── .project - │   ├── ローカル画面確認.bat - │   │ - │ - ├── ui_plugins/ - └── ui_test/ - -.. tip:: - - ここで、デモに不要な業務画面JSPを削除してもよい。 - (**ローカル画面確認.bat** で表示されるリンク一覧には自動的に反映される。) - - -2. エクスポートしたディレクトリを圧縮ソフトで圧縮する。(ファイル名は任意) - - -確認手順 ----------------------------- -1. 作成したアーカイブを任意の別ディレクトリに展開する。 - -2. 展開したディレクトリ直下の **ローカル画面確認.bat** を実行する。 - -3. ブラウザが起動し、各業務画面JSPのリンク一覧が表示されるので - デモ表示を行いたい画面のリンクをクリックする。 - - - diff --git a/ja/development_tools/ui_dev/doc/development_environment/update_bundle_plugin.rst b/ja/development_tools/ui_dev/doc/development_environment/update_bundle_plugin.rst deleted file mode 100644 index 628c88363..000000000 --- a/ja/development_tools/ui_dev/doc/development_environment/update_bundle_plugin.rst +++ /dev/null @@ -1,211 +0,0 @@ -========================================= -Nablarch 標準プラグインの更新 -========================================= -本節では、UI開発基盤を構築後にNablarch 標準プラグイン(以下標準プラグイン)をバージョンアップする手順を示す。 -なお、この作業は、UI開発基盤の担当者が実施すればよく、各担当者が個別に実施する必要はない。 - -1. UI開発基盤の更新方針 -=================================== -UI開発基盤をPJで取り込んだ後も、Nablarchでは標準プラグインの不具合修正や機能追加を継続的に行う。 -Nablarch側で行った標準プラグインの不具合修正や機能追加がPJ側でも必要と判断した場合は、 -その変更内容をここで述べる手順に沿って取り込むことができる。 - -機能の修正や追加はプラグイン単位で行うことができるので、取り込みに要する作業工数や、 -PJの既存機能に対する影響を極小化できる。 - -.. tip:: - - ただし、PJ側の拡張や既存機能への影響に関して、Nablarch側では把握できないので、 - 取り込み後の動作確認等はPJ側で担保する必要がある。 - - - -2. 作業時のディレクトリ構成 -=================================== -最新バージョンのNablarch標準プラグインのバンドルを取得し、 -:doc:`./initial_setup` の **UI開発基盤の取得と展開** で述べたディレクトリ構造と同じ構造になるように配置する。 - - -3. 標準プラグインの更新 -====================================================== - -標準プラグインの変更内容を取り込む手順を以下に示す。 - -更新前のPJのUI開発基盤が依存している標準プラグインのうち、 -更新されたプラグインを確認し、マージ作業をおこなう。 - - -1. プラグインのセットアップ ---------------------------------------------------- - -nablarch_plugins_bundle/bin/setup.bat を実行する。 -詳細は、 UI開発基盤の導入の :ref:`プラグインのセットアップ ` を参照すること。 - - -2. 現在のプラグインのバージョンの確認 ------------------------------------------------------- - -標準プラグインバンドル配下にある `bin/update.bat` をPJのディレクトリ構造にあわせ修正し、 -実行することで、現在のPJのプラグインとリリースされた標準プラグインのバージョン差異を確認できる。 - -下記の構造の場合、 `PROJECT` は"../../xxx_project"、 `UI_PLUGIN` は"ui_plugins"となる。 - - .. code-block:: bash - - プロジェクトルート/ - │ - ├── nablarch_plugins_bundle/ - │ ├── bin/ - │ │ └── update.bat - │ ├── node_modules/ - │ │ ├── nablarch-css-base/ - │ │ ├── nablarch-css-color-default/ - │ │ ├── nablarch-css-common/ - │ │ │ - │ │ ## 後略 ## - │ │ - │ └── package.json - │ - └── xxx_project/ # PROJECT - ├── web/ - ├── ui_demo/ - ├── ui_test/ - └── ui_plugins/ # UI_PLUGIN - ├── node_modules/ - ├── pjconf.json - └── package.json - - - -update.batを実行すると、ui_plugins/ で管理されている標準プラグインの内、 -更新されているプラグインを `ui_plugins/updated_plugin.json` に出力する。 - -.. tip:: - - 標準プラグインの新規取込の場合、 `updated_plugin.json` には出力されないため、 - 対象の標準プラグインをPJのUI開発基盤にコピーすること。 - -updated_plugin.jsonの出力例 - -.. code-block:: javascript - - { - "nablarch-css-core" : "1.0.0" // nablarch-css-coreが更新されていた場合 - , "web_project-dev-ui_test-support" : "1.0.1" // 後述する_fromで指定したプラグインが更新されていた場合 - , "web_project-dev-ui_test-support" : "1.0.0" - } - - -PJでコピー(もしくは参照)して作成した場合、 -コピーしたプラグインのpackage.jsonに `_from` を設定することでupdate.bat実行時に一覧に出力できる。 - -.. tip:: - - 標準プラグインには `_from` が設定済みのため、コピーした時に削除しなければよい。 - - -`_from` の指定例 - -.. code-block:: javascript - - { "name" : "web_project-dev-ui_test-support" - , "description" : "プロジェクト向けにカスタマイズしたUI部品単体テストサポートプラグイン" - , "version" : "1.0.0" - , "_from" : "nablarch-dev-ui_test-support@1.0.0" - } - - - -3. プラグインのマージ ---------------------------------------------------- -取り込むと判断したプラグインについて修正内容を取り込む。 -下記に取込作業の手順を示す。 - - 1. 作業ディレクトリにUI開発基盤導入時のリビジョンをチェックアウトする - - .. code-block:: bash - - 作業ディレクトリ/ - ├── nablarch_plugins_bundle/ - │ ├── node_modules/ - │ │ ├── nablarch-css-base/ - │ │ ├── nablarch-css-color-default/ - │ │ ├── nablarch-css-common/ - │ │ │ - │ │ ## 後略 ## - │ │ - │ └── package.json - │ - └── xxx_project/ - ├── web/ - ├── ui_plugins/ - │ ├── node_modules/ - │ │ ├── nablarch-css-base/ - │ │ ├── nablarch-css-color-default/ - │ │ ├── nablarch-css-common/ - │ │ │ - │ │ ## 後略 ## - │ │ - │ └── package.json - ├── ui_demo/ - └── ui_test/ - - - 2. 標準プラグインとカスタマイズしたプラグイン(初期状態)を上書きする。 - - カスタマイズしたプラグインについては競合する可能性があるため、競合を解消する。 - - 1. 新規(標準モジュールをコピーし、リネームした状態で)追加したリビジョンにアップデートする。 - 2. `_from` 属性に設定されている標準モジュールの内容で上書きする。 - 3. PJ側が修正したリビジョンにアップデートする。 - - * 競合しない場合は、Nablarch側の修正を確認する。 - * 競合した場合は、競合を解決する。 - - - 下記の場合、rev:10, rev:15で2回の競合の解消を行う。 - - 1. nablarch-css-color-defaultを上書きする。 - 2. リビジョン10にアップデートする。 - 3. xxx_project-css-color-defaultに `_from` に設定されているnablarch-css-color-defaultの修正内容を上書きする。 - 4. リビジョン15にアップデートする。 - 5. xxx_project-css-commonに `_from` に設定されているnablarch-css-commonの修正内容を上書きする。 - 6. PJ側の修正したリビジョンまでアップデートする。 - - - .. code-block:: bash - - 作業ディレクトリ/ - ├── nablarch_plugins_bundle/ - │ └── node_modules/ - │ ├── nablarch-css-base/ - │ ├── nablarch-css-color-default/ - │ ├── nablarch-css-color-common/ - │ │ - │ ## 後略 ## - │ - └── xxx_project/ - ├── web/ - ├── ui_demo/ - ├── ui_test/ - └── ui_plugins/ - └── node_modules/ - ├── nablarch-css-base/ - ├── nablarch-css-color-default/ # diff確認 - ├── nablarch-css-common/ - ├── xxx_project-css-color-default/ # rev:10 で追加(マージ対象) - ├── xxx_project-css-common/ # rev:15 で追加(マージ対象) - │ - ## 後略 ## - - 3. trunkのリビジョンまでアップデートしたら、UI部品のビルドを行い、各部品のテストをする。 - - .. tip:: - - 標準プラグインを新規に取り込んだ際、カスタマイズが必要になった場合は、一旦 `ui_plugins/pjconf.json` から対象プラグインを外し、 - カスタマイズは行わないこと。 - - 標準プラグインの取り込みが完了してから :doc:`modifying_code_and_testing` を参照し、カスタマイズすること。 - - 4. リポジトリにコミットする。 - diff --git a/ja/development_tools/ui_dev/doc/index.rst b/ja/development_tools/ui_dev/doc/index.rst deleted file mode 100644 index c01976851..000000000 --- a/ja/development_tools/ui_dev/doc/index.rst +++ /dev/null @@ -1,77 +0,0 @@ -====================================================== -Nablarch UI開発基盤 解説書 -====================================================== - -.. toctree:: - :glob: - :hidden: - - * - */* - - -.. important:: - - UI開発基盤を使用する際には、以下の知識が必要となる。 - これらの有識者がいない場合、UI開発基盤の使用は困難である。 - - * `Node.js `_ - * `RequireJS `_ - * `jQuery `_ - * `Sugar `_ - * `less `_ - - また、UI開発基盤は設計工程からJSPを作成するアプローチを採用しているが、以下の理由により、「設計工程用JSPと開発工程用JSPのダブルメンテナンス」が往々にして発生する - - * JSPに設計工程のみで必要な情報を埋め込むことになるため、開発工程での可読性が著しく低下する。 - * 開発時に分岐などのロジックが埋め込まれた場合、設計工程と開発工程で全く同じJSPは使用不可能である。 - - -**目次** - -:doc:`about_this_book` - -:doc:`book_layout` - -:doc:`related_documents` - -**I: はじめに** - 1. :doc:`introduction/intention` - 2. :doc:`introduction/grand_design` - 3. :doc:`introduction/ui_development_workflow` - -**II: 開発作業手順** - 4. :doc:`development_environment/initial_setup` - 5. :doc:`development_environment/redistribution` - 6. :doc:`development_environment/modifying_code_and_testing` - 7. :doc:`development_environment/update_bundle_plugin` - -**III: プロジェクトのファイル構成と変更管理** - 8. :doc:`structure/directory_layout` - 9. :doc:`structure/plugins` - -**IV: アーキテクチャ詳説** - 10. :doc:`internals/architecture_overview` - 11. :doc:`internals/jsp_page_templates` - 12. :doc:`internals/jsp_widgets` - 13. :doc:`internals/css_framework` - 14. :doc:`internals/multicol_css_framework` - 15. :doc:`internals/js_framework` - 16. :doc:`internals/inbrowser_jsp_rendering` - 17. :doc:`internals/showing_specsheet_view` - 18. :doc:`plugin_build` - -**V: リファレンス** - 19. :doc:`reference_ui_standard/index` - 20. :doc:`reference_jsp_widgets/index` - 21. :doc:`reference_js_framework` - 22. :doc:`reference_ui_plugin/index` - -**VI: 補足資料** - 23. :doc:`testing` - 24. :doc:`known_issues` - - -.. |br| raw:: html - -
    \ No newline at end of file diff --git a/ja/development_tools/ui_dev/doc/internals/architecture_overview.rst b/ja/development_tools/ui_dev/doc/internals/architecture_overview.rst deleted file mode 100644 index 48afbe02f..000000000 --- a/ja/development_tools/ui_dev/doc/internals/architecture_overview.rst +++ /dev/null @@ -1,120 +0,0 @@ -=================================== -全体構造 -=================================== -本節では業務機能JSPから使用する以下の各機能の構造について述べる。 - - :doc:`jsp_page_templates` - 業務画面の内容のうち、業務機能領域を除く各共通領域の描画やHTMLヘッダ等の各種宣言について、 - **UI標準** に準拠した形で実装するJSPタグファイルおよびインクルードファイル群。 - - :doc:`jsp_widgets` - ボタンや検索結果テーブル、各種入力フィールドといった業務画面内に配置するUI部品について、 - **UI標準** に準拠した形で実装するJSPタグファイル群。 - - :doc:`css_framework` - :doc:`jsp_page_templates` および :doc:`jsp_widgets` などの共通部品に対し - **UI標準** に沿った統一的な外観を与える共通スタイル定義。 - また、デバイスサイズに応じた動的な表示調整を行う。 - - :doc:`js_framework` - **UI標準** の内容のうち、カレンダー日付入力部品のような、 - 通常のHTMLの範疇では実現できないUI機能を実装するために、 :doc:`jsp_widgets` - が使用する JavaScript部品群である。 - - - :doc:`inbrowser_jsp_rendering` - 業務画面のJSPソースファイルをJavaScriptでレンダリングすることにより - :doc:`jsp_page_templates` および :doc:`jsp_widgets` を用いて作成した - ローカルディスク上のJSPファイルを通常のブラウザで直接開けるようにする仕組みである。 - これにより設計中の画面のイメージや動作デモを簡単に確認することができる。 - -本番環境での外部ライブラリへの依存 ------------------------------------ -上記機能の実装において、本番環境で下記の外部ライブラリを使用している。 - - ============= ================ =================================================== ============= - ライブラリ名 類別 用途 ライセンス - ============= ================ =================================================== ============= - require.js JavaScript JavaScriptの分割モジュール管理 MIT - sugar.js JavaScript ECMAScript5互換関数を含むユーティリティAPI群の提供 ライセンスフリー - jQuery JavaScript DOM関連APIの簡易化およびブラウザ互換レイヤの提供 MIT - font-awesome css/webフォント 各種アイコン画像の提供 MIT,SIL OFL 1.1 - ============= ================ =================================================== ============= - -なお、これらのライブラリを業務画面JSPから直接使用することは想定していない。 - -サーバ動作時の構成 --------------------------------- -以下の図は、サーバ上の業務画面JSPをブラウザ上に表示する際、これらの機能がどのように -使用されるかを表す構成図である。 -( :doc:`css_framework` はこの図には記述していない。) - - .. figure:: ../_image/architecture_overview_server.png - :scale: 80 - :align: center - -以下は、上図の依存関係を詳しく解説したものである。 - - ========================= ======================== ======================================================================== - モジュール 依存対象 詳細 - ========================= ======================== ======================================================================== - **業務画面JSP** | UI部品ウィジェット | UI標準の画面構成のうち業務機能領域を除く共通領域は - | 業務画面テンプレート :doc:`jsp_page_templates` を使用して描画する。 - | タグライブラリ | 業務画面領域内のUI要素の描画には :doc:`jsp_widgets` を使用する。 - | 業務画面JSPから直接使用するタグライブラリは以下のものに限る。 - - **変数管理・フロー制御に関するタグ** - **** / **** / **** / **** など - - **ページ遷移制御に関するタグ** - **** / **** など - - | また、JavaScriptを業務画面JSPに直接記述することはせず、 - :doc:`jsp_widgets` を通じて使用する。 - - :doc:`jsp_page_templates` | UI部品ウィジェット | 基本的に業務画面JSPと同等の扱いとなる。 - | タグライブラリ ただし、HTMLのヘッドタグなどを記述するために - **** **** などのタグライブラリを使用する。 - - :doc:`jsp_widgets` | JavaScript UI部品 | 各種のタグライブラリ及びHTMLにより記述される。 - | タグライブラリ HTMLのみで実現できないクライアントのUIについては **JavaScript UI部品** - に依存する。 - | :doc:`jsp_widgets` が出力するHTMLとクライアント側の - :doc:`js_framework` との紐付けは **マーカーCSS** によって行うため、 - :doc:`jsp_widgets` が直接JavaScriptを使用することは無い。 - (詳細は :doc:`js_framework` の項を参照すること。) - - :doc:`js_framework` | サードパーティJS | 標準のJavaScript(ECMA)および、DOM APIに加えて上述した - **サードパーティJSライブラリ** を使用する。 - - ========================= ======================== ======================================================================== - -ローカル動作時の構成 --------------------------------- -ローカルデモ動作では、 `web_project/ui_demo/ローカル画面確認.bat` で起動されるHTTPサーバで\ -業務画面JSPを表示することで、JavaScript上でJSPタグをレンダリングして表示できる。 - -以下の図はローカルデモ動作におけるアーキテクチャ構成を表した図である。 - - .. figure:: ../_image/architecture_overview_local.png - :scale: 80 - :align: center - -この図と、先のサーバ動作での構成図とを比較した場合、 -ローカルデモ動作では全てブラウザ上で動作するという点を除けば、以下の構成は全く同じであることがわかる。 - - - 業務画面JSP - - :doc:`jsp_page_templates` - - :doc:`jsp_widgets` - - :doc:`js_framework` - - サードパーティJSライブラリ - -両者で異なるのは、JSPの解釈(HTMLへの変換)を担う部分である。 -サーバ動作時ではJSPの解釈は **タグライブラリ** およびアプリケーションサーバ上の -**JSPレンダリングエンジン** が行っているが、ローカル動作ではこの処理を :doc:`inbrowser_jsp_rendering` および -そこから呼び出される **タグライブラリ スタブJS** が代替する。 - -**タグライブラリ スタブJS** は :doc:`inbrowser_jsp_rendering` 機能の一部であり、 -JSPタグライブラリの挙動についてブラウザ上で一定のエミュレーションを行う機能である。 -サポートするタグライブラリの一覧および、エミュレーション処理の内容については :doc:`../reference_jsp_widgets/index` を参照すること。 - diff --git a/ja/development_tools/ui_dev/doc/internals/configuration_files.rst b/ja/development_tools/ui_dev/doc/internals/configuration_files.rst deleted file mode 100644 index b83c9dd3a..000000000 --- a/ja/development_tools/ui_dev/doc/internals/configuration_files.rst +++ /dev/null @@ -1,74 +0,0 @@ -===================================== -UI開発基盤設定ファイル -===================================== - --------------- -タグ定義 --------------- - -配置場所 -=================================== - - /js/devtool/resource/タグ定義.js - -用途 -=================================== -各JSPウィジェットのローカル表示及び設計書ビューを表示するために必要な捕捉情報を記述する設定ファイル。 -JSPウィジェットを追加した場合は ここの定義を追加する必要がある。 - -記述書式 -============================= -本ファイルはJavaScriptのオブジェクトリテラルの形式で記述する。 -各ウィジェットごとに下記の形式でエントリを追加する。:: - - '【タグ名】' : [ '【UI要素名】', {【オプション】} ] - -**エントリの記述例** - -.. code-block:: javascript - - , 'field:label' : ['テキスト表示', {ignoredInForm:true}] - , 'field:listbuilder' : ['リストビルダー', {multiple:true}] - - -【タグ名】、【UI要素名】、【オプション】の記述内容は以下のとおり。 - -**【タグ名】:** - 当該JSPタグの名称を指定する。 - - 例) 'field:code_checkbox' - -**【UI要素名】:** - 当該タグのUI部品名を指定する。 - この内容は設計書ビューの「画面項目種類」欄に表示される。 - - 例) 'チェックボックス' - -**【オプション】:** - 当該タグのローカル表示、設計書ビュー表示に関するオプションを - オブジェクトリテラル形式で記述する。 - - **multiple:** - 当該のfield:タグが複数選択項目である場合、 - すなわち、同一name属性のinput要素を複数持ちうる場合にtrueを指定する。 - デフォルトはfalse - - **ignoreInForm:** - 当該のタグが単なる表示項目である場合にtrueを指定する。 - デフォルトはfalse - - **defaultLabel:** - 当該のbutton: タグにデフォルトで表示する文言を指定する。 - - **complex:** - 当該のタグが複数のinput要素で構成される場合、 - その項目名とname属性を"|"区切りで記述する。 - - **記述例:** - - .. code-block:: javascript - - , 'field:extension_number' : ['内線番号入力', {complex: 'ビル番号(builName)|個人番号(personalName)'}] - , 'field:tel' : ['電話番号入力', {complex: '市外局番(areaName)|市内局番(localName)|加入者局番(subscriberName)'}] - - diff --git a/ja/development_tools/ui_dev/doc/internals/css_framework.rst b/ja/development_tools/ui_dev/doc/internals/css_framework.rst deleted file mode 100644 index bc0f7a7a6..000000000 --- a/ja/development_tools/ui_dev/doc/internals/css_framework.rst +++ /dev/null @@ -1,249 +0,0 @@ -==================== -CSSフレームワーク -==================== - ------------------ -概要 ------------------ -**CSSフレームワーク** は **UI標準** に定義されたレイアウト・デザインを実装する -スタイルシート群である。 - - -.. _display_mode: - --------------------------- -表示モード切替え --------------------------- -本フレームワークでは、以下の3つのCSSファイルを CSS Media Query の機能を用いて動的に切り替えることで、 -UI標準の **「2.1 端末の画面サイズと表示モード」** の記載内容を実現している。 - - - wide.css (ワイド表示用スタイル) - - compact.css (コンパクト表示用スタイル) - - narrow.css (ナロー表示用スタイル) - - ------------------------ -ファイル構成 ------------------------ -CSSファイルは全て、LESSファイル形式で記述する。 - -LESS形式からCSSへのコンパイル及びファイルの結合は、\ :ref:`UI部品のビルドと配置`\ で行う。 -詳細は、\ :ref:`ui_genless` を参照 - -結合されたCSSファイルは\ **/css/built/**\ 配下に配置され、各画面から外部参照される。 -このタグは\ **/WEB-INF/tags/device/media.tag**\ (/WEB-INF/include/html_head.jspから使用されているタグファイル)に以下のように定義されている。 - - .. code-block:: jsp - - <%@tag pageEncoding="UTF-8" description="表示モードによってスタイルを読み込むウィジェット" %> - <%@taglib prefix="n" uri="http://tis.co.jp/nablarch" %> - <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> - - <%-- (本番用) --%> - - - - - - - - - - - - -各表示モードを切替える CSS Media Query が指定されたlinkタグを記載している。 -なお、IE8以下では CSS Media Query をサポートしないため、IEコンディショナルコメントを使用し、常にワイドモードで表示する -ようにしている。 - - -構成ファイル一覧 ------------------------- - -============================ ======== ======= ========================================== ======================================================== -名称 動作環境 [#1]_ パス 内容 ----------------------------- ---------------- ------------------------------------------ -------------------------------------------------------- -_ ローカル サーバ _ _ -============================ ======== ======= ========================================== ======================================================== -**ビルド済みCSSファイル** -------------------------------------------------------------------------------------------------------------------------------------------------- -ワイドモードスタイル ○ |br| ○ |br| /css/built/wide-minify.css |br| ワイドモード時に使用するミニファイ済みCSSファイル |br| - × × /css/built/wide.css コンパイル済み/未ミニファイのもの [#minify]_ - -コンパクトモードスタイル ○ |br| ○ |br| /css/built/compact-minify.css |br| コンパクトモード時に使用するミニファイ済みCSSファイル |br| - × × /css/built/compact.css コンパイル済み/未ミニファイのもの [#minify]_ - -ナローモードスタイル ○ |br| ○ |br| /css/built/narrow-minify.css |br| ナローモード時に使用するミニファイ済みCSSファイル |br| - × × /css/built/narrow.css コンパイル済み/未ミニファイのもの [#minify]_ - -**LESSファイル** -------------------------------------------------------------------------------------------------------------------------------------------------- -CSS3互換ルール △ △ /css/core/css3.less ブラウザ間で仕様の異なるスタイルについて、単一の |br| - 記述で対応できるようにしたルール。 - -デフォルトスタイルリセット △ △ /css/core/reset.less ブラウザ間で仕様の異なるデフォルトスタイルを全て |br| - リセットする。 - -グリッドレイアウトシステム △ △ /css/core/grid.less 後述のグリッドレイアウトを実装する基本ルール群。 - -基本スタイル定義 △ △ /css/style/base.less htmlの各タグのスタイル定義を標準化するための |br| - スタイル定義。 - -業務画面領域スタイル定義 △ △ /css/template/\*.less UI標準で定義された、各業務画面領域のスタイル定義。|br| - 各表示モード(wide、compact、narrow)用のスタイル定 |br| - 義も提供される。|br| - base-wide.less、base-compact.less、base-narrow.less |br| - のように表示モードを示すサフィックスが付加された |br| - LESSファイルが提供される。 - -UI部品ウィジェットスタイル △ △ /css/button/\*.less |br| 各UI部品ウィジェットのスタイル定義。|br| - /css/field/\*.less |br| UI部品ウィジェットによっては、各表示モード用の |br| - /css/box/\*.less |br| スタイル定義も提供される。 - /css/table/\*.less |br| - /css/column/\*.less - -JavaScript UI部品スタイル △ △ /css/ui/\*.less 各JavaScript UI部品のスタイル定義。 - - -============================ ======== ======= ========================================== ======================================================== - - - -.. [#1] - **「サーバ」:** - 実働環境にデプロイして使用するかどうか - **「ローカル」:** - ローカル動作時に使用するかどうか - **○ :** - 使用する - **△ :** - 直接は使用しないがミニファイしたファイルの一部として使用する。 - **× :** - 使用しない - -.. [#minify] - 未ミニファイCSSファイルとミニファイ済みCSSファイルとの違いはコメントの有無のみである。 - ミニファイ済みCSSファイルを開発中から使用しても開発効率を落とすことはない。 - - このため、\ `ファイル構成`_ \ にあるように、常にミニファイ済みファイルを使用し、 - 未ミニファイ済みファイルを使用することはない。 - ----------------------------------- -グリッドベースレイアウト ----------------------------------- -**グリッドベースレイアウト** とは、ページ全体に渡る縦罫と横罫を定め、 -それに沿ってコンテンツを配置するレイアウト手法である。 - -本システムのワイド表示モードにおける業務画面は横幅965pxであり、 -これを24のグリッドと呼ばれる単位に分割している。 - -次の図は、業務画面の基本構造をグリッド単位で表したものである。 - - .. figure:: ../_image/app_grid.png - :scale: 80 - :align: center - -このように、画面内のオブジェクトの配置はグリッド単位で定められる。 -グリッドを使用する対象は画面の基本構造だけではなく、 -業務画面内に配置されるオブジェクトは原則としてグリッドを使用して配置するものとする。 - - -.. tip:: - - グリッドベースレイアウトの一般的な解説については、以下のサイトなどを参照すること。 - - https://xdissent.github.io/grid-less/ - - - -グリッドレイアウトフレームワークの使用方法 ----------------------------------------------------- -グリッドレイアウトを使用するには、HTML中の要素に以下のCSSクラスを指定する。 - - ============================= ================================================================================= - クラス名 用途 - ============================= ================================================================================= - .grid-row グリッドの横列を定義するブロック要素に指定する。 |br| - - .. tip:: - - 本クラスは、ページの全幅分の領域を固定で確保する。|br| - このため、業務コンテンツ部などのページの全幅より狭い領域で |br| - 使用すると、行が領域からはみ出し横スクロールバーが表示され |br| - る原因となるため注意すること。 - - .content-row 業務コンテンツ部での横列を定義するブロック要素に指定する。 |br| - - .grid-col-(横幅) グリッドの横列内に配置するコンテンツに指定する。 |br| - (横幅)には、そのコンテンツが占める横幅をグリッド数で指定する。 - - .grid-offset-(左余白) グリッドの横列内に配置するコンテンツに指定する。 |br| - (左余白) には、そのコンテンツの左側に開ける余白幅をグリッド数で指定する。 - - ============================= ================================================================================= - -次の図は、メインコンテンツ内の入力フォームの配置を表したものである。 - - .. figure:: ../_image/field_grid.png - :scale: 80 - :align: center - -これを実装するには、以下のように記述すればよい。 - -**JSP** - - .. code-block:: jsp - -
    - - -
    - -
    - - - -
    - -.. tip:: - 上記ソースコードはあくまでグリッドレイアウトを説明するためのものである。 - 通常は :doc:`../internals/jsp_widgets` を使用して実装するので、 - 上記のようなソースコードを実際に記述することはない。 - ------------------------- -アイコンの使用 ------------------------- -本機能では、下記のマークアップのように、 `` タグに **class** 属性値に -\ `fa`\ と、\ `fa-`\ で始まるアイコン名を指定することにより、アイコンを表示できる。 - - .. code-block:: html - -

    - 統計表示 -

    - -なお、これらのアイコンは画像ではなくフォントとして実装されており -通常の文字と同様にサイズ、色、配置を調整できる。 -使用可能なアイコン名については、以下のサイトを参照すること。 - - https://fontawesome.com/v5/search - - -.. |br| raw:: html - -
    - diff --git a/ja/development_tools/ui_dev/doc/internals/download/multicol.less b/ja/development_tools/ui_dev/doc/internals/download/multicol.less deleted file mode 100644 index 7b7bbe390..000000000 --- a/ja/development_tools/ui_dev/doc/internals/download/multicol.less +++ /dev/null @@ -1,83 +0,0 @@ -// core css -@import "../../../ui_plugins_multicol/node_modules/nablarch-css-core/ui_public/css/core/reset"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-css-core/ui_public/css/core/css3"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-css-core/ui_public/css/core/grid"; - -// conf -@import "../../../ui_plugins_multicol/node_modules/nablarch-css-conf-multicol/ui_public/css/conf/page-size-multicol"; - -// base -@import "../../../ui_plugins_multicol/node_modules/nablarch-css-base/ui_public/css/style/base"; - -// color-setting -@import "../../../ui_plugins_multicol/node_modules/nablarch-css-color-default/ui_public/css/color/default-color-scheme"; - -// common -@import "../../../ui_plugins_multicol/node_modules/nablarch-css-common/ui_public/css/common/nablarch"; - -// page-template -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-base/ui_public/css/template/base-multicol"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-page/ui_public/css/template/page"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-page/ui_public/css/template/page-multicol"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-app_aside/ui_public/css/template/aside"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-app_aside/ui_public/css/template/aside-multicol"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-app_footer/ui_public/css/template/footer"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-app_footer/ui_public/css/template/footer-multicol"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-app_header/ui_public/css/template/header"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-app_header/ui_public/css/template/header-multicol"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-app_nav/ui_public/css/template/topnav"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-app_nav/ui_public/css/template/topnav-multicol"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-template-error/ui_public/css/template/errorpage"; - -// widget -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-base/ui_public/css/field/base"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-base/ui_public/css/field/base-multicol"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-calendar/ui_public/css/ui/calendar"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-checkbox/ui_public/css/field/checkbox"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-checkbox/ui_public/css/field/checkbox-multicol"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-listbuilder/ui_public/css/ui/listbuilder"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-listbuilder/ui_public/css/ui/listbuilder-multicol"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-radio/ui_public/css/field/radio"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-radio/ui_public/css/field/radio-multicol"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-text/ui_public/css/field/text"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-field-hint/ui_public/css/field/hint-multicol"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-multicol-row/ui_public/css/layout/row"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-button/ui_public/css/button/base"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-button/ui_public/css/button/base-multicol"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-box-base/ui_public/css/box/base-multicol"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-box-content/ui_public/css/box/content"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-box-img/ui_public/css/img/base"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-box-img/ui_public/css/img/base-multicol"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-box-title/ui_public/css/box/title"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-table-base/ui_public/css/table/base"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-table-base/ui_public/css/table/base-multicol"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-table-tree/ui_public/css/ui/treelist"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-column-base/ui_public/css/column/base"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-collapsible/ui_public/css/ui/collapsible"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-placeholder/ui_public/css/ui/placeholder"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-readonly/ui_public/css/ui/readonly"; - -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-tab/ui_public/css/ui/tab"; - -// layout for multi column -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-multicol-row/ui_public/css/layout/row"; -@import "../../../ui_plugins_multicol/node_modules/nablarch-widget-multicol-cell/ui_public/css/layout/cell"; - -// device patch -@import "../../../ui_plugins_multicol/node_modules/nablarch-device-fix-ios/ui_public/css/device/iphone"; - - - diff --git a/ja/development_tools/ui_dev/doc/internals/inbrowser_jsp_rendering.rst b/ja/development_tools/ui_dev/doc/internals/inbrowser_jsp_rendering.rst deleted file mode 100644 index 89e39f85a..000000000 --- a/ja/development_tools/ui_dev/doc/internals/inbrowser_jsp_rendering.rst +++ /dev/null @@ -1,288 +0,0 @@ -===================================== -業務画面JSPローカル表示機能 -===================================== - ------------------ -概要 ------------------ -:doc:`inbrowser_jsp_rendering` とは、ローカルディスク上の -業務画面JSPファイルを通常のブラウザで直接開けるようにする仕組みである。 - -これにより、開発用アプリケーションサーバが用意されていない -設計工程の最初期においても画面のイメージや動作デモを簡単に実施できる。 -また、JSPの内容に応じた画面項目の一覧を表示できる。 -次の図は、以下のJSPをブラウザで直接開いて表示した例である。 - -**ブラウザで直接開いた結果(左: 画面プレビュー表示 / 右:画面項目定義書表示** - - .. figure:: ../_image/rendering_image.png - :scale: 60 - :align: center - - -**ソースコード** - - .. code-block:: jsp - - - - <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> - <%@ taglib prefix="n" uri="http://tis.co.jp/nablarch" %> - <%@ taglib prefix="field" tagdir="/WEB-INF/tags/widget/field" %> - <%@ taglib prefix="button" tagdir="/WEB-INF/tags/widget/button" %> - <%@ taglib prefix="t" tagdir="/WEB-INF/tags/template" %> - <%@ taglib prefix="tab" tagdir="/WEB-INF/tags/widget/tab" %> - <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> - - - - - - - - - - - - - - 半角英数記号20文字以内 - - - - - - - - - - - - - - - - - - - - - - - -.. **i** - -ローカルデモ用のJSPレンダリング処理を行う際に必要となる資源は、大きく分けて以下の3つである。 - - 1. **ローカルデモの対象となる業務画面JSPファイル** - 2. **UI共通部品群(UI部品ウィジェット/業務画面テンプレート/JavaScript UI部品)** - 3. **ローカルデモ用JSPレンダリングエンジン** - -上記のうち **1.** と **2.** は、実際の開発で使用しているものをそのまま用いる。 -つまり、デモ用に何かを作成したりする必要はなく、サーバ開発でそのまま使用する成果物を用いて -ローカルレンダリングを行うことができる。 - -以下は、これらの3つの資源の関係を表した図である。 - - .. figure:: ../_image/rendering_function.png - :scale: 80 - :align: center - - - -ローカルJSPレンダリング機能の有効化 ------------------------------------- -業務画面JSPファイルの冒頭に以下のソースコードを記述することで、ローカルJSPレンダリング機能が有効となる。 - -.. code-block:: jsp - - - - - - -.. **i** - -業務画面JSPを記述する際の制約事項 ------------------------------------- -本機能を使用するには、業務画面JSPの記述に関して以下の制約事項が存在する。 - -なお、これらの制約はブラウザで直接開くJSPに対するものなので、 -:doc:`jsp_widgets` や :doc:`jsp_page_templates` には影響しない。 - -1. 明示的な閉じタグが必ず必要 - - 本機能を使用するには、業務画面JSP内の全てのJSPタグについて、明示的に閉じタグを記述する必要がある。 - 閉じタグを記述しない場合、以降のタグがレンダリングされなくなる。 - - **正しい例** - - .. code-block:: jsp - - - - **誤った例** - - .. code-block:: jsp - - - - -2. disabled属性値の内容が無視される(IE8限定) - - IE8では、タグ上に **disabled** 属性が設定されていた場合、その属性値の内容に関わらず - 常に `disabled="disabled"` が設定されているものとみなされる。 - このため `disabled="false"` のように記述した場合に意図した通りの表示とならない。 - このような場合は単に **disabled** 属性を削除すること。 - -.. _localrendering-limitation-eventconfirmtag: - -3. イベントに関連した動作が不安定(ブラウザによって挙動も異なる) - - eventタグを使用した場合やJavaScriptでnablarch/ui/event.jsで定義されたイベントに対するリスナーを登録した場合の動作が、 - ブラウザによってことなったりリスナーがコールバックされないと言った問題がある。 - - このため、これらの実装部分の確認はアプリケーションサーバにデプロイし行うこと。 - - ------------------------------------ -ローカル表示の仕組み ------------------------------------ -本機能は大きく以下の2つの部分に分けることができる。 - - 1. 業務画面JSPパーサー(`/js/jsp.js <../../../../_static/ui_dev/yuidoc/files/nablarch-dev-ui_demo-core_ui_local_js_jsp.js.html>`_) - 2. タグライブラリ スタブJS (`/js/jsp/taglib/*.js`) - -前者は業務画面JSPファイル内のJSPをパースし、タグライブラリごとに後者のスタブJSを呼び出す機能である。 -後者の機能はタグライブラリごとに、ローカル表示時の挙動を実装するものである。 - -標準では以下のタグライブラリについてスタブJSを実装しており、 -:doc:`jsp_page_templates` や :doc:`jsp_widgets` を使用して業務画面JSPを作成しているのであれば -問題なくローカル表示が可能である。 - -================= ================================================================================================================================== -名前空間 スタブJSの仕様(APIドキュメント) -================= ================================================================================================================================== -**jsp:** `JSPタグライブラリJSスタブ <../../../../_static/ui_dev/yuidoc/classes/jsp.taglib.jsp.html>`_ -**c:** `JSTL coreタグライブラリJSスタブ <../../../../_static/ui_dev/yuidoc/classes/jsp.taglib.jstl.html>`_ -**fn:** `JSTL FunctionsタグライブラリJSスタブ <../../../../_static/ui_dev/yuidoc/classes/jsp.taglib.function.html>`_ -**n:** `NablarchタグライブラリJSスタブ <../../../../_static/ui_dev/yuidoc/classes/jsp.taglib.nablarch.html>`_ -================= ================================================================================================================================== - -ただし、新規の :doc:`jsp_widgets` を追加したり、外部のタグライブラリを使用したりする場合は、 -必要に応じてプロジェクト側で タグライブラリスタブJS を追加する必要がある。 - - ------------------------ -構造 ------------------------ - -構成ファイル一覧 ------------------------- - -============================ ======== ======= =================================== ======================================================== -名称 動作環境 [#1]_ パス 内容 ----------------------------- ---------------- ----------------------------------- -------------------------------------------------------- -_ ローカル サーバ _ _ -============================ ======== ======= =================================== ======================================================== -ミニファイ済みスクリプト ○ × /js/devtool.js ローカルレンダリングに必要な資源をミニファイしたもの - -初期ロードスクリプト △ × /js/devtool-loader.js ローカルレンダリングに必要なスクリプト群を初期ロード - するスクリプト - また、JSPのレンダリングが完了するまでの一定期間、 - 画面の表示を隠すなどの初期処理もあわせて行う。 - -ミニファイ対象資源一覧 × × /js/build/devtool_conf.js プロジェクト内で使用しているタグファイルや - インクルードファイルなどの資源の一覧。 - JSPローカルレンダリングではこれらの資源の内容を参照 - するため、ミニファイ処理の事前処理として自動作成される。 - -ローカルデモUI △ × /js/devtool/\*.js ローカルレンダリングに付随するUI機能。 - 主に画面項目定義の表示機能と、それを操作するためのUI - が含まれる。 - -設計書画面テンプレート △ × /specsheet_template/ 画面詳細設計書のExcelシートを「Webページ」として保存した - SpecSheetTemplate.htm もの。設計書ビューの表示機能では、このテンプレートを - 使用してJSP上の設計情報を表示する。 - -タグ定義 △ × /js/devtool/resource/ 各JSPウィジェットのローカル表示及び設計書ビューを - タグ定義.js 表示するために必要な捕捉情報を記述する設定ファイル。 - JSPウィジェットを追加した場合は - ここの定義を追加する必要がある。 - 記述書式などの詳細については - :doc:`./configuration_files` を参照すること。 - -JSPローカルレンダラ △ × /js/jsp.js JSPのローカルレンダリングを行うメインスクリプト - 一応、jQueryプラグインの形態をとっている。 - -コンテキスト変数設定 △ × /js/jsp/context.js JSPのローカルレンダリングを行う際に、参照する - セッション・リクエスト・ページの各コンテキスト変数 - のダミー定義を記述する。 - -EL式簡易パーサ △ × /js/jsp/el.js EL式の簡易パーサ -タグライブラリスタブ △ × /js/jsp/taglib/nablarch.js |br| 各タグファイル・タグライブラリのスタブ動作を実装する - /js/jsp/taglib/jstl.js |br| スクリプト群。 **/js/jsp.js** から呼ばれる。 - /js/jsp/taglib/jsp.js |br| タグライブラリの名前空間毎に別スクリプトとなっている。 - /js/jsp/taglib/html.js |br| - /js/jsp/taglib/field.js |br| - /js/jsp/taglib/button.js |br| - /js/jsp/taglib/link.js |br| - /js/jsp/taglib/template.js |br| - /js/jsp/taglib/table.js |br| - /js/jsp/taglib/column.js |br| - /js/jsp/taglib/tab.js |br| - /js/jsp/taglib/event.js |br| - - -============================ ======== ======= =================================== ======================================================== - -.. [#1] - **「サーバ」:** - 実働環境にデプロイして使用するかどうか - **「ローカル」:** - ローカル動作時に使用するかどうか - **○ :** - 使用する - **△ :** - 直接は使用しないがミニファイしたファイルの一部として使用する。 - **× :** - 使用しない - -.. |br| raw:: html - -
    diff --git a/ja/development_tools/ui_dev/doc/internals/js_framework.rst b/ja/development_tools/ui_dev/doc/internals/js_framework.rst deleted file mode 100644 index d1464291f..000000000 --- a/ja/development_tools/ui_dev/doc/internals/js_framework.rst +++ /dev/null @@ -1,425 +0,0 @@ -================================== -JavaScript UI部品 -================================== - ------------ -概要 ------------ -:doc:`js_framework` は、カレンダー表示やページ内タブページのように、 -通常のHTMLの範疇では実現できないUI機能を実装するJavaScript部品群である。 -これらの部品群は、以下の指針に基づき、独自実装されている。 - -- Nablarchフレームワークの動作を前提とし、エラー時の入力データ復帰や、 - 非活性項目・変更不可項目など、サーバ処理との連携の整合性を重視する。 - -- 可能な限りJavaScriptを直接記述しなくてもカスタマイズできるようにする。 - -- UI標準に準じた挙動、統一的なデザインが実現されること。 - -使用可能な各部品の仕様については :doc:`../reference_js_framework` を参照すること。 - -使用例 ---------------------- -以下のソースコードは、画面内の入力要素に対してカレンダー入力部品を使用している例である。 - -.. code-block:: jsp - -
    - - - -
    - -`