WO2003044661A1 - Systeme et procede de mise en oeuvre d'adaptateur de service - Google Patents

Systeme et procede de mise en oeuvre d'adaptateur de service Download PDF

Info

Publication number
WO2003044661A1
WO2003044661A1 PCT/US2002/033097 US0233097W WO03044661A1 WO 2003044661 A1 WO2003044661 A1 WO 2003044661A1 US 0233097 W US0233097 W US 0233097W WO 03044661 A1 WO03044661 A1 WO 03044661A1
Authority
WO
WIPO (PCT)
Prior art keywords
adapter
request
application
enterprise system
service
Prior art date
Application number
PCT/US2002/033097
Other languages
English (en)
Inventor
Mitch Upton
Original Assignee
Bea Systems, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/271,423 external-priority patent/US20030093471A1/en
Application filed by Bea Systems, Inc. filed Critical Bea Systems, Inc.
Priority to AU2002347919A priority Critical patent/AU2002347919A1/en
Publication of WO2003044661A1 publication Critical patent/WO2003044661A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications

Definitions

  • the invention relates generally to adapters useful for invoking services against a resource such as an enterprise system.
  • the first attempts at application integration were primarily focused on low-level implementation details such as the format ofthe data, the byte ordering between machines, and character encoding.
  • the focus on low- level data formats was necessary because, for the first generation of application integration solutions, there were no widely adopted standards for data encoding that could be deployed across multiple vertical applications.
  • Systems and methods for connecting a client application to a resource such as an enterprise system can utilize a service adapter, in accordance with embodiments of the present invention.
  • An application view component can be used to provide an interface to an enterprise system for an application.
  • a service adapter can invoke a service in the enterprise system, and can allow requests to be received to, and responses received from, the enterprise system.
  • the service adapter can pass these requests and responses in a format such as XML, and can transform data passing between the enterprise system and an application or application component.
  • Figure 1 is a diagram of a system that can be used in accordance with one embodiment of the present invention.
  • Figures 2 and 3 are portions of a synchronous invoke method that can be used with the system of Figure 1.
  • Figure 4 and 5 are portions of an asynchronous invoke method that can be used with the system of Figure 1.
  • Figure 6 is a flowchart showing a method that can be used with the system of Figure 1.
  • Application integration components can be used to integrate a variety of applications and systems, such as Enterprise Information Systems (EISs).
  • EISs Enterprise Information Systems
  • IT Information technology
  • IT Information technology
  • Application integration can utilize adapters to establish an enterprise-wide, united framework for integrating any current or future application.
  • Adapters can simplify integration efforts by allowing each application to be integrated with an application server, instead of requiring that each application being integrated with every other application.
  • J2EE Java 2 Platform, Enterprise Edition
  • XML extensible Markup Language
  • J2EE Connector architecture provides a standardized approach for the development of adapters for all types of applications, from legacy mainframe applications, such as CICS from IBM, to packaged applications such as PeopleSoft, Siebel, and SAP.
  • legacy mainframe applications such as CICS from IBM
  • packaged applications such as PeopleSoft, Siebel, and SAP.
  • the adoption of such standards enables businesses to develop adapters that work on any J2EE-compliant application server, for example.
  • Application integration can build on this standardized approach in an application integration framework by providing a standards-based architecture for hosting J2EE Connector architecture-based adapters. Developers can build J2EE Connector architecture-compliant adapters and deploy these adapters, in the integration framework, to connect enterprise applications to an application server.
  • An application view can provide a simple, self- describing, consistent interface to services and events in an application.
  • Application views can make use of an adapter for an EIS, making it possible to expose existing information systems as business services. Unlike adapters, however, an application view does not require users to have intimate knowledge ofthe EIS orthe client interface forthat EIS, such that non-programmers or technical analysts can use application views.
  • An application view can provide a business-oriented way for business analysts to access enterprise data without worrying about the programmatic details defined in an adapter. These same users may be otherwise unable to use an adapter directly, due to a lack of familiarity with the EIS.
  • An application integration component directed at enterprise application integration can have several primary aspects. If the functionality of an EIS such as a PeopleSoft system or an SAP system is to be invoked, an implementation of the J2EE Connector Architecture can be used. If something occurs inside an EIS system, such as a trigger going off, an event can be generated. This event may, in some embodiments, need to be communicated to an external application. An event architecture in an application integration component can handle this communication.
  • An application view can provide significant value to an application integration component.
  • An application view can abstract away much ofthe complexity in dealing with an application, such as a backend EIS system.
  • Application views can also simplify the way in which adapters are accessed.
  • Application views can provide a layer of abstraction, for example, between an adapter and the EIS functions exposed by that adapter. Instead of accessing an EIS by direct programming a user can simply: edit an adapter's application views, create new application views, or delete any obsolete application view(s).
  • a layer of abstraction formed by application views can help non-programmers maintain the services and events exposed by an adapter.
  • Each application view can be specific to a single adapter, and can define a set of business functions on that adapter's
  • a Web-based interface for the adapter can be used to define application views.
  • Application views can, for example, use XML as a common language among applications.
  • Service and event definitions can be used to expose application capabilities.
  • XML schemas can be used to define the data for services and events. Bidirectional communication can also be supported in adapters.
  • An application view can be an integral part of an integration framework.
  • An application view can provide a view of the application capabilities exposed by an adapter that a user can customize to meet specific needs.
  • a user can tailor an application view, for example, for a specific business purpose.
  • the application view can provide an effective alternative to the "one size fits all" approach that many applications provide for the design of a client interface.
  • An application view can be defined for only the business or other capabilities that are applicable for a specific purpose. The capabilities can be customized such as by naming, describing, and defining the data requirements.
  • adapters 106, 108, 110 can be developed that allow a client application 100 to communicate with an
  • Enterprise Information System 104 through the use of an application view 102.
  • a developer can begin by coding an adapter that exposes the functionality in the enterprise application that accesses enterprise data.
  • the functionality the adapter exposes could, for example, update records in a database using SQL statements, or could request information from an
  • SAP system using its BAPI or I DOC interfaces.
  • a business analyst working with the developer, can then define an application view of the adapter using an application view interface.
  • An application view can support events and services for an application through an underlying adapter. These events and services can be established for a particular use, such as for a particular business process.
  • an "event” enables messages generated by an application to be managed following a publish/subscribe model. In this model, users can "subscribe” to receive messages that are "published” by an application. Each message can be referred to as a publication event.
  • Such a model can be implemented through multicasting, for example.
  • Services A "service” can act as a business function that can be invoked by a user. Service invocations can cause messages to be sent to an application following a request/response model. This model can differ from a publish/subscribe model, in that messages are only sent when requested by a user. This can be implemented, for example, using a point-to-point messaging system. Both events and services can be passed through the system as XML documents.
  • a service can constitute business logic within an application that an application view exposes for reuse. When an application view receives an
  • Each service on an application view can represent a single function, such as a single, logical business function, within a target application.
  • a service can take request data, such as in the form of an XML document, and return response data, which can also take the form of an XML document.
  • Services can represent bi-directional communication between an application view client and a target application. Services can allow for synchronous or asynchronous communication between applications.
  • Figures 2 and 3 refer to one method for the synchronous invoking of services that can be used, for example, with a system as shown in Figure 1.
  • various objects that can be used in an interaction, including a client 200, an application view 202, an application view bean 204, a JNDI service 206, a connection factory 208, a connection 210, an interaction 212, an interaction specification 214, and an enterprise information system 214.
  • a user or client 200 might, for example, call functionality to get details relating to a customer from an EIS system 216.
  • Figure 2 shows the first part, and Figure 3 the second part, of one sequence of steps that can occur in an application view engine to enable a client to invoke a service in an EIS.
  • a Java object or application view 202 is issued from the client 200 for a web service.
  • Three basic clients in this example can include workflow, BPM, and custom-coded Java applications.
  • a new instance will be created on the server by creating an enterprise Java bean, triggered by calling an ejbCreate() or create() routine.
  • the client 200 requests and receives the Request Document or I Doc definition for a service, such as GetCustomerDetail, in the example referred to as Service 1 , or "Svc1.”
  • a service such as GetCustomerDetail
  • This definition can be used to create a default document. Creating a default document does a lot of the work otherwise required of a user by filling in a skeleton XML document to be sent to the backend EIS. It also saves the client a lot of work in creating a document, as the definition knows exactly how the document should look.
  • the client can call a routine to set various parameters on the request into the XML document, such as setting a customer number, name, or address.
  • the client 200 can use the application view 202 to invoke the service, such as by calling "InvokeService.” The user can pass the request document with the invoke.
  • the invoke request can trigger an application view bean 204 to begin interacting with a J2EE connector, or Connection Factory 208, such as by calling "Getlnteraction.”
  • a routine can get a connection, such as to SAP.
  • the connector architecture can provide for connection pulling, transaction management, and security services for adapters.
  • the connector architecture can get the interaction on the connection, then execute the interaction and pass the request document.
  • the interaction object can be provided by a resource adapter. SAP, for example, builds a particular interaction into an adapter.
  • the interaction can figure out what specific EIS functionality is being invoked, and can invoke that functionality on the EIS ("function") object 216. This approach is very adapter-specific. Some of the value added to the J2EE Connector architecture is that this functionality is hidden behind standard APIs. Finally, the interaction object 212 can create a response
  • a client 200 makes a request and waits until a response is received before the client proceeds with processing.
  • Asynchronous invokes can also be supported.
  • One synchronous approach is shown in Figures 4 and 5. Across the top of the figures are various objects that can be used in an interaction, including a client 300, an application view 302, an application view bean 304, an asynchronous service response listener 306, a request queue 308, an asynchronous message request handler 310, an asynchronous response message listener 312, a response queue 314, an asynchronous service response 316, and an application view 318.
  • a client 300 can make a request for which the client does not need a response right away, but is able to come back later to get the response.
  • This approach can be more complicated than a synchronous approach, as it is necessary to use an underlying queuing mechanism to track requests to, and responses from, an EIS.
  • That application view can have a unique identifier.
  • the unique identifier can be used forfiltering back on the server.
  • a user can create a document and invoke a service, such as by calling "invokeServiceAsync”.
  • a call-back listener can be passed, which handles the response when it comes back from the server.
  • the application view can post the request onto a JMS queue using a call such as "post (AsyncRequest) via JMSQueueSender.”
  • a return response document, or I Doc can be put into a message queue, such as a JMS queue, by calling a method such as 'OnMessage(asyncRespMessage)," which can be a virtual call.
  • a call-back listener was registered. Once a message arrives on a JMS queue, the call-back listener can look at the response and determine the appropriate listenerto notify that the response has returned.
  • a request such as "OnAsyncServiceResponse" can be serviced on the callback listener. The client can then have a response document in its callback listener, and can do with the document whatever is necessary.
  • adapters can be developed as service or event adapters.
  • a service adapter can invoke a specific function in the resource or enterprise system to which it is connected.
  • An event adapter can propagate information from the enterprise system to the integration environment.
  • businesses can add any number of services and events to an application view definition to support specific types of transactions between an application server and the target enterprise system.
  • an adapter can use XML to translate an application's data format, business analysts do not need to understand the format. If a business analyst wants to use an adapter, it is only necessary for the analyst to know how to define and use application views. Best of all, because all adapters can use a similar Web-based interface for defining application views, it can be easy to learn to use current and future adapters.
  • XML can make application integration smooth both for developers and business analysts.
  • the J2EE specification does not currently provide guidelines for an
  • EIS EIS to initiate communication with the application server or client.
  • Application integration can provide this capability through the user of event adapters.
  • Another important feature of an application view is the ability to support bi-directional communication.
  • the J2EE specification does not currently provide guidelines for an EIS to initiate communication with the application server or client.
  • This capability also can be provided by an event adapter.
  • each event responds to a particular enterprise application state.
  • an application view can extract data about the event from the enterprise system and propagate the data in an XML document to the integration environment.
  • each service when added to an application view, can represent a particular function in an enterprise system.
  • an application view receives an XML document that maps to a particular server, it can invoke the corresponding function in the enterprise system using the service adapter.
  • the enterprise system can in some embodiments send a response to the service.
  • Service adapters in accordance with one embodiment ofthe present invention can receive an XML request document from a client and invoke a specific function in the underlying enterprise information system (EIS).
  • Service adapters are consumers of messages and can in some instances provide a response.
  • There are two primary ways to invoke a service using either an asynchronous approach or a synchronous approach.
  • a client application issues a service request and proceeds with its processing. The client application does not wait for the response.
  • a client waits for a response before proceeding with its processing.
  • Application integration can support both of these service adapter invocations, relieving a user from having to provide this functionality.
  • Service adapters can perform at least the following four functions in one sequence shown, for example, in Figure 6.
  • Service adapters can receive service requests, such as in the form of XML request documents, from an external client or client application 400.
  • Service adapters can transform the XML request document into a format that is specific to the underlying enterprise system or EIS 402.
  • the request document can conform to the request XML schema for the service, and the request XML schema can be based on metadata in the EIS.
  • the service adapter can invoke an underlying function, functionality, or service in the enterprise system 404.
  • the service adapter can be configured to wait for the response in an asynchronous mode, such as may take advantage of a callback listener.
  • the service adapter can also transform the response from an ElS-specific data format to an XML response document that conforms to the response XML schema for the service or client application 406.
  • the response XML schema can be based on metadata in the EIS.
  • Service adapters may not contain application specifics, such that they can be plugged into any application server that supports the J2EE
  • Such critical adapter information can include, for example, the EIS type, vendor, version, locale and national language of the deployment, the adapter logical name, and whether or not the adapter supports services. This information can be collected und used to create a custom development tree for the adapter.
  • This tree can provide environment-specific instructions for deploying an adapter for application integration. Specifically, the tree can provide config.xml entries and the replacements for the path already made.
  • the file can provide mapping information. Contents of a file such as overview.html can be copied directly into config.xml, which can facilitate adapter deployment.
  • the adapter After rebuilding an adapter, the adapter can be deployed into an application integration system.
  • An adapter can be deployed manually, or can be deployed, for example, from an interface or application server console.
  • An ADK logging toolkit can allow a user to log internationalized messages to multiple output destinations. This logging toolkit can leverage, for example, the work of the open source project Apache Log4j. This product can include software developed by the Apache Software
  • Certain information may help a developer to conceptualize an adapter before coding. This information can also help to define such components as the adapter logical name and the Java package base name, and can help to determine the locales for which message bundles need to be localized.
  • Information to be gathered can include the name of the EIS for which the adapter is being developed, as well as the version ofthe EIS and the type of EIS, such as DBMS or ERP. It can also be useful to know the vendor name for this adapter, as well as the version number and adapter logical name. It can be determined whether the adapter needs to invoke functionality within the EIS and, if so, which services need to be supported by the adapter. The developer should determine which mechanism or API is provided by the EIS to allow an external program to invoke functionality provided by the EIS, as well as what information is needed to create a session/connection to the EIS for this mechanism. The information needed to determine which function(s) will be invoked in the EIS for a given service can also be obtained.
  • the adapter can provide an XML schema that describes the input parameters required by this service per request.
  • the information needed to determine the output requirements for the service can also be important. If the EIS provides a mechanism to browse a catalog of functions the adapter can invoke, the adapter should probably support the browsing of services. If the adapter needs to receive notifications of changes that occur inside the EIS, the adapter may need to support events.
  • the mechanism or API provided by the EIS to allow an external program to receive notification of events in the EIS can be obtained in order to help determine whether a pull or a push mechanism is to be developed. It can also be determined whether the EIS provides a way to determine which events your adapter can support, as well as whether the EIS provides a way to query for metadata for a given event. It can also be desirable to determine which languages might need to be supported.
  • a user may wish to determine the EIS and the appropriate service required for the adapter, based upon the user's knowledge of the EIS.
  • the user can also identify the interface to the back-end functionality, as well as the "expensive" connection object required to invoke a function within the EIS.
  • the expensive connection object is a resource required to communicate with the EIS and can require the allocation of system resources, such as a socket connection or DBMS connection.
  • a valuable asset of the J2EE Connector Architecture is that the application server can provide pooling of these objects. Therefore, a user can first determine this object for the adapter, as it may need to be pooled by the application server.
  • a user can also determine the security needs for the service adapter. The user may need to consider and understand how to pass connection authentication across the connection request path. To do this, the adapter may need to implement a connectionRequestlnfo or similar class.
  • An ADK can provide a class such as ConnectionRequestlnfoMapto map authorization information, such as username and password, to the connection to facilitate ConnectionRequestlnfo implementation.
  • a user can also determine the necessary transaction support, identifying which type of transaction demarcation support to implement with the adapter. These can include local transaction demarcations and XA- compliant transaction demarcations.
  • the XAResource API (XA) is a standard protocol for two-faced commitment across diverse services or applications.
  • a second step involves configuring the development environment in order to prepare a computer for adapter development.
  • these steps can be completed simply be running a utility such as a GenerateAdapterTemplate utility.
  • the user can set up the necessary file structure.
  • a user can create a file structure necessary not only to run an adapter, but also to use an ADK.
  • a user can verify that, upon installation, the necessary directories and files appear in the proper directory.
  • cloning a development tree such as by using a GenerateAdapterTemplate, the file paths and files under adapters can be automatically cloned and updated to reflect the new development environment.
  • An ADK can employ a build process based upon Ant, a 100% pure Java-based build tool.
  • An Ant build file can contain the tasks needed to build a J2EE-compliant adapter.
  • Running a GenerateAdapterTemplate or similar utility to clone a development tree for an adapter can create a build. xml file specifically for that adapter. This can free the user from having to customize the sample build.xml and can ensure that the code is correct.
  • a manifest file such as MANIFEST.MF.
  • This file can contain classloading instructions for each component that uses the file.
  • a manifest file can be created for each /META-INF directory, possibly except ear/META-INF.
  • the file can contain version information and vendor information, as well as the relevant classpath or classloading instructions.
  • the Class-Path property can contain references to resources required by the component, can can identify the shared jar files. A user can ensure that these jar files are included in the shared area of the .ear file. If the filename
  • MANIFEST.MF appears in a .war file, it should appear in uppercase letters if being used with a Unix system. If it does not, Unix may not recognize the filename and an error may occur.
  • ADK Adapter Development Kit
  • An adapter development kit can be used to facilitate the construction of adapters that will run, for example, in any J2EE-compliant environment. These adapters can have additional, value-added functionality when hosted within an integration framework component.
  • An ADK can provide tools to allow adapter developers to create bi-directional adapters that support the business-level concepts of events and services.
  • An adapter developed using the ADK can provide access to an application's metadata, which can be used to define events and services via the application view.
  • the ADK can provide run-time support for events and services.
  • the ADK can also provide support for constructing thin, JSP-based user interfaces for use in defining application views based on the adapter.
  • An ADK can provide a collection of frameworks to support the development, packaging, and distribution of adapters, such as a design- time framework, a run-time framework, a logging/auditing framework, and a packaging framework.
  • a design-time framework can provide a tool set to support the development of a user interface for an adapter.
  • the user interface can be used for defining and deploying application views. This can be a powerful feature, as it can make the adapter capabilities easier to use, giving the adapter a wider audience.
  • An ADK run-time framework can provide a complete, extensible event generator to support the development of event adapters.
  • the runtime framework can provide a complete, but minimally functional J2EE-compliant adapter.
  • Adapter developers can save time coding and debugging by starting with and extending this base framework.
  • An ADK packaging framework can also be utilized that provides a tool set for packaging an adapter for delivery to a customer. This framework can make the creation of various archive and environment files easy for adapter developers.
  • An ADK can address three requirements for adapter development, including a requirement for structure.
  • structure a prominent theme in any integrated development and debugging environment, such as IDDE, is development project organization.
  • a well structured development environment is desirable so that a user can immediately begin coding the adapter.
  • a user will usually prefer not to spend time designing and organizing a build process.
  • An ADK can provide an organized development environment, build process, intuitive class names and class hierarchy, and test methodology. Since an ADK encompasses so many advanced technologies, an incremental development process can be the key to success.
  • An ADK test process can allow a developer to make a simple change and test it immediately.
  • Peripheral implementation details are sections of code that are needed to support a robust software program, but are not directly related to the kernel of the program. Moreover, peripheral implementation details are sections of code that are needed to support the framework the software program runs in.
  • the J2EE Connector Architecture specification requires that the JAVAX.RESOURCE.CCI.INTERACTIONSPEC implementation class provide getter and setter methods that follow the JavaBeans design pattern.
  • a user may need to support PROPERTYCHANGELISTENERS and VETOABLECHANGELISTENERS in an implementation class.
  • PROPERTYCHANGELISTENERS and VETOABLECHANGELISTENERS in an implementation class.
  • a user will not want to have to study the JavaBeans specification to learn how to do this, but would prefer to focus on implementing the enterprise information system (E ⁇ S)-specific details of the adapter.
  • the ADK provides base a base implementation for a majority ofthe peripheral implementation details of an adapter.
  • An ADK can provide a clear methodology for developing an adapter.
  • the ADK methodology organizes a user's thoughts around a few key concepts: events, services, design time, and run time.
  • An ADK can provide run-time support for events and services.
  • An ADK can also include an API to integrate an adapter's user interface into an application view management console. Another added value that can be provided by an ADK is that adapters can become an integral part of a single graphical console application that allows business users to construct integration solutions.
  • Resource adapters which shall be referred to herein as "adapters,” are software components that connect one application to another when those applications are not originally designed to communicate with each other. For example, an order entry system built by one company can require an adapter to communicate with a customer information system built by another.
  • ADK By using an ADK, a user can create at least two types of adapters: service adapters, which consume messages, and event adapters, which generate messages. A user can also use the ADK to create J2EE- compliant adapters that are not specific to an application or application integration environment, but still comply with the J2EE Connector Architecture specification.
  • An ADK can provide an abstract foundation for an adapter, such as an AbstractManagedConnectionFactory. This foundation can provide basic support for internationalization/localization of exception and log messages for an adapter, as well as providing hooks into the log toolkit.
  • An ADK can also provide getter and setter methods for standard connection properties, such as username, password, server, connectionURL, and port.
  • An ADK can provide access to adapter metadata gathered from a java.util.ResourceBundle for an adapter.
  • An ADK also can allow adapter providers to plug license checking into the initialization process for the factory. If the license verification fails, then client applications cannot get a connection to the underlying EIS, thus making the adapter useless.
  • An ADK can also provide state verification checking to support JavaBeans- style post-constructor initialization.
  • An ADK can include a logging framework that gives adapter developers the ability to log internationalized and localized messages to multiple output destinations.
  • J2EE Connector architecture provides a standard programming interface to message transport mechanisms.
  • J2EE Connector architecture provides a standard for application adapters.
  • a J2EE Connector architecture adapter can run within any integration server that supports the J2EE Connector architecture standard.
  • the adoption of standards such as the J2EE Connector architecture allows packaged application vendors to construct application adapters that will work within any compliant application server.
  • the architecture is a new standard that only addresses low-level integration issues.
  • the connector architecture is unidirectional, allowing for synchronous communication from an integration server to an external application.
  • the connector architecture does not, however, specify how an external application can asynchronously send data to an integration server. It also does not provide any common or required interface for application adapters, nor specify how data passed between adapters and applications are encoded.
  • Connector architecture This is one major advantage to using an application view in accordance with one embodiment of the present invention.
  • the J2EE connector architecture also fails to address application integration at the business level.
  • An application framework in accordance with the present invention adds value to the connector architecture by providing support for business process-level integration and bi-directional data flow between the framework integration server and external applications.
  • a business-level view can be implemented on top of the connector architecture that consists of events and services.
  • An event can be a message delivered asynchronously via JMS from an application, such as by an application adapter, to the framework server.
  • a service can be a function provided by an application that any business process can invoke via the application's adapter.
  • Application integration can utilize an integration framework, which can provide a systematic, standards-based architecture for hosting application views.
  • a framework can include application views for exposing application functions and design-time graphical user interfaces (GUIs), such as web-based interfaces that can be used for creating application views.
  • GUIs design-time graphical user interfaces
  • the integration framework utilizes adapters, instead of "hardwiring" enterprise systems together. Once an adapter is deployed for an EIS, other components and applications can use that adapter to access data on the EIS.
  • a framework in accordance with one embodiment of the present invention relies on XML as the standard format for messages.
  • XML includes XSLT, a standard for transforming XML documents into other XML documents.
  • XSLT is designed for use as partof XSL, which is a stylesheet language for XML.
  • an XML document is used to specify the operations to perform on a class of XML documents in order to transform the documents' structure and content.
  • An XSLT transformation can make use of any ofthe operations built into the Java programming language, or can make use of custom operations written either in Java or in native code.
  • An integration framework allows a business process to invoke an XSLT engine in order to transform XML messages.
  • JMS Java Message Service
  • HTTPS HyperText Transfer Protocol Secure
  • An integration framework can be based on an existing standard infrastructure, such as an application server that supports J2EE, JMS, and the J2EE Connector architecture. Using such a standard infrastructure also provides for high availability and scalability, such as by clustering and resource pooling.
  • the framework can provide for universal connectivity by enabling the construction of XML-based application adapters that can connect to any legacy and packaged application.
  • An adapter development kit can be used to allow users such as customers, system integrators, and packaged application vendors to quickly develop J2EE connector architecture-compliant and integration framework-based adapters.
  • the framework can utilize XML, which means that the same data format can be used for both within- and between-enterprise integration, since many e- commerce systems use XML as the standard message format.
  • An integration framework can also utilize a business-process engine to allow non-programmers to graphically construct and maintain business processes.
  • An integration framework can implement a common model on top of the J2EE Connector architecture that is focused on business-level concepts. This model, which can consist of XML-encoded events and services, allows the management of a consistent integration environment, regardless of the interface required between adapters and their target applications.
  • the business processes can react to events generated by applications, and they can invoke an application's functionality via services that are exposed by an application adapter.
  • an ADK design-time framework can provide the tools needed to build a Web-based GUI that adapter users need to define, deploy, and test their application views.
  • each adapter can have ElS-specific functionality, each adapter can require a GUI for deploying application views.
  • This framework can minimize the effort required to create and deploy these interfaces. This minimization can be accomplished at least in part by using two primary components.
  • One of these components is a Web application component that allows a user to build an HTML-based GUI by using, for example, Java Server Pages (JSP).
  • JSP Java Server Pages
  • a second component is a deployment helper component or request handler that can provide a simple API for deploying, undeploying, and editing application views on an application server.
  • An application view can represent both events and services that support a business purpose. This can allow a business user to interact with the application view for all communication with an application. This bi- directional communication can be supported by an event adapter and/or a service adapter. An application view can abstract this fact from the user and present the user with a unified business interface to the application.
  • An ADK packaging framework can provide a tool set for packaging an adapter for delivery to a customer. Ideally, all adapters are installed, configured, and uninstalled the same on a single application server. Moreover, all service adapters can be J2EE compliant.
  • the packaging framework can make creating a J2EE adapter archive (.rar) file, Web application archive (.war) file, the enterprise archive (.ear) file, and application integration design environment archive easy.
  • Adapter activity typically falls within one of two conceptual entities: run time and design time.
  • Run time refers to functionality that occurs when adapters execute their processes.
  • Design time refers to the adapter user's implementation of an application view. In essence, design time is the act of creating, deploying, and testing an application view.
  • Run time and design time can be characterized in an ADK by run- time and design-time frameworks.
  • a run-time framework can be comprised of the tools used when developing adapters, while the design-time framework can refer to the tools used to design Web-based user interfaces.
  • a run-time framework is a set of tools that can be used to develop event and service adapters.
  • the run-time framework can provide a basic, extensible event generator.
  • the run-time framework can provide a complete J2EE-compliant adapter.
  • Classes supplied by the run-time framework can provide several following benefits.
  • One benefit of such a class is that it can allow a user to focus on EIS specifics rather than J2EE specifics.
  • the classes can also minimize the effort needed to use the ADK logging framework, can simplify the complexity of J2EE Connector Architecture, and can minimize redundant code across adapters.
  • a run-time framework can provide abstract base classes to help implement an event generator to leverage the event support provided by an ADK environment.
  • a key component of a run-time framework is a run-time engine, which can host the adapter component responsible for handling service invocations, and can manage physical connections to the EIS, login authentication, and transaction management, all in compliance with the J2EE Connector Architecture standard.
  • a design-time interface for each adapter can include a J2EE Web application that is bundled as a .war file.
  • a Web application can comprise a bundle including sp, .html, image files.
  • a Web application descriptor can be implemented using, for example, web.xml. The descriptor can instruct the J2EE Web containerto deploy and initialize the Web application. Every Web application can have a context that is specified during deployment. This context can identify resources associated with the Web application, such as under the Web container's doc root.
  • a service can be a business operation, within an application, that is exposed by an application view.
  • the service can exist as a request/response mechanism.
  • an application receives a request to invoke a business service
  • the application view can invoke that functionality within its target application and return, or respond with, an XML document that describes the results.
  • a user may need to determine and define the input requirements, output expectations, and the content of the interaction specification.
  • Each adapter can have an adapter logical name, a unique identifier that represents an adapter and can serve as an organizing principle for all adapters.
  • An adapter logical name can also be used to name a message bundle, a logging configuration, and log categories.
  • An adapter logical name can be, for example, a combination of vendor name, the type of EIS connected to the adapter, and the version number of the EIS. By convention, this information can be expressed as VENDOR_EIS-TYPE_EIS version.
  • An adapter logical name can be used with adapters in a number of ways. One way is to use the adapter logical name as a convention. Another way is to use the adapter logical name during adapter deployment as part ofthe .war, .rar, jar, and .ear filenames.
  • the adapter logical name can also be used as an organizing principle, or as a return value to an abstract method such as getAdapterLogicalName().
  • the Name attribute of a ⁇ ConnectorComponent> element can be an adapter logical name. This attribute can then act as a key that is used by an application integration component to associate application views with a deployed resource adapter, as shown for the following sample adapter:
  • the adapter logical name can be used as the name of the .rar file as a convention, but is not required in the URI attribute.
  • a process such as logging can use an adapter logical name as an organizing principle.
  • the adapter logical name can be used as the base log category name for all log messages that are unique to that adapter.
  • the adapter logical name can be passed as the value for the parameters such as:
  • an adapter logical name can be used as the base forthe name of the Log4J configuration file for the adapter, ".xml" can be appended to the name.
  • the Log4J configuration file for an adapter can be SAMPLE ADK.xml.
  • An adapter logical name can also be used for localization.
  • the adapter logical name can be used as the base name for message bundles for an adapter.
  • the default message bundle for a sample adapter can be SAMPLE_ADK.properties. Consequently, the adapter logical name can be passed as the value for the parameters such as:
  • the adapter logical name can be used as a return value to an abstract method such as getAdapterLogicalName() on a request handler such as com.adapter.web.AbstractDesignTimeRequestHandler. This return value for RootLogContext for a connection factory.
  • Example Methods There are several key methods for which a user can supply implementations.
  • One method, createConnectionFactory() can be responsible for constructing the factory for application-level connection handles for the adapter.
  • clients of the adapter can use the object returned by this method to obtain a connection handle to the EIS.
  • connectionFactorylmpl If the adapter supports a CCI interface, a user can return an instance of ConnectionFactorylmpl or an extension of this class.
  • the key to implementing this method correctly can be to propagate the ConnectionManager, LogContext, and ResourceAdapterMetaData into the client API.
  • Another method, createManagedConnection(), can be responsible for constructing a ManagedConnection instance for the adapter.
  • a ManagedConnection instance can encapsulate the expensive resources needed to communicate with the EIS. This method can be called by the ConnectionManager when it determines a new ManagedConnection is required to satisfy a client's request.
  • a common design pattern with adapters is to open the resources needed to communicate with the EIS in this method and then pass the resources into a new ManagedConnection instance.
  • a checkState() method can get called by an
  • AbstractManagedConnectionFactory can provide an implementation of the matchManagedConnections() method that relies upon the compareCredentialsO method on AbstractManagedConnection.
  • a user may need to override AbstractManagedConnection's compareCredentialsO method. This method can be invoked when the ManagedConnectionFactory attempts to match a connection with a connection request for the ConnectionManager.
  • initServiceDescriptor() For service adapters, it may be necessary to implement a service descriptor method, such as initServiceDescriptor(), so that the adapter user can add services at design time.
  • a service descriptor method such as initServiceDescriptor()
  • This method is as follows: protected abstract void initServiceDescriptor(ActionResult result, IServiceDescriptor sd, HttpServletRequest request) throws Exception
  • This method can be invoked, for example, by an addservc() implementation for an abstract design time request handler.
  • the implementation can be responsible for initializing the ElS-specific information of a parameter such as "IserviceDescriptor.”
  • the base class implementation of addservc() can be used for error handling, and the addservcO method can be invoked when the user submits an addservc
  • JSP JSP, for example.
  • an application integration properties file i.e., ai. properties
  • properties such as the following example properties:
  • Edit service e.g., edtservc.jsp
  • add service e.g., addservcjsp
  • Java server pages can be called in order to provide editing capabilities.
  • One main difference between "edit" JSP files and "add" JSP files is the loading of descriptor values. For this reason, adapters such as DBMS and e-mail adapters can use the same HTML for both editing and adding.
  • These HTML files can be statically included in the JSP page, which can save duplication of JSP/HTML and properties.
  • a method such as IoadServiceDescriptorProperties() can be loaded on the abstract design time request handler. This method can be used to set the service properties into the RequestHandler. Once these values are set, the RequestHandler can map the values to the controls being used in the JSP file.
  • a default implementation of loadServiceDescriptorProperties() can use the property name associated with the ADK tag to map the descriptor values. If values other than ADK tag names are used to map the properties for a service, these methods can be overridden to provide the descriptor to the ADK tag-name mapping.
  • the RequestHandler can be initialized prior to the resolution of HTML, and in some embodiments this initialization should only take place once.
  • the edtservc.jsp can submit to edtservc. For example:
  • edtservc.jsp files can include methods such as loadServiceDescriptorPropertiesO, which can be used to load the RequestHandler with the ADK tag-to-value mapping. If the developer uses the same values to name the ADK tag and load the Service
  • mapping can be free. Otherwise, the developer may need to override these methods in a design time RequestHandler to provide these mappings.
  • Another method that may need to be implemented includes boolean supportsEditableServicesO, which can be used as a marker. If the method returns true, the edit link can be displayed on an application view administration page or window. Override can be provided through the design time request handler.
  • An editServiceDescriptor() method can be implemented, which can be used to persist the edited service data. This method can extract ADK tag values from the request and add them back into the service descriptor. In addition, the method can handle any special processing forthe schemas associated with the service. If the schemas need modification, they can be updated here. Once the values read in from the request are no longer needed, they can be removed from the RequestHandler.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

On peut utiliser un adaptateur de service pour connecter une application de client à un système d'entreprise ou pour connecter des éléments d'application qui, sans cet adaptateur, n'auraient pas pu communiquer entre eux. Un adaptateur de service peut appeler un service dans un système d'entreprise et peut permettre à ce système d'entreprise de recevoir des demandes et d'envoyer des réponses. Cet adaptateur de service peut faire passer ces demandes et ces réponses dans un format tel que XML, et il peut transformer des données passant entre le système d'entreprise et une application ou un élément d'application. On peut utiliser un élément de visionnage d'application de façon à fournir une interface à un système d'entreprise pour une application. Cette description de l'invention ne prétend pas être exhaustive ou précise, et ne limite pas la portée de cette invention. On peut accéder à d'autres caractéristiques, d'autres aspects et d'autres objets de cette invention en examinant les spécifications, les figures et les revendications.
PCT/US2002/033097 2001-10-18 2002-10-17 Systeme et procede de mise en oeuvre d'adaptateur de service WO2003044661A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2002347919A AU2002347919A1 (en) 2001-10-18 2002-10-17 System and method for implementing a service adapter

Applications Claiming Priority (20)

Application Number Priority Date Filing Date Title
US34791901P 2001-10-18 2001-10-18
US34790101P 2001-10-18 2001-10-18
US60/347,919 2001-10-18
US60/347,901 2001-10-18
US10/271,423 US20030093471A1 (en) 2001-10-18 2002-10-15 System and method using asynchronous messaging for application integration
US10/271,244 US20030097345A1 (en) 2001-10-18 2002-10-15 System and method for invoking business functionality for a workflow
US10/271,156 2002-10-15
US10/271,244 2002-10-15
US10/271,156 US7546606B2 (en) 2001-10-18 2002-10-15 System and method using a connector architecture for application integration
US10/271,410 US7831655B2 (en) 2001-10-18 2002-10-15 System and method for implementing a service adapter
US10/271,402 2002-10-15
US10/271,402 US7152204B2 (en) 2001-10-18 2002-10-15 System and method utilizing an interface component to query a document
US10/271,423 2002-10-15
US10/271,157 US7552443B2 (en) 2001-10-18 2002-10-15 System and method for implementing an event adapter
US10/271,194 2002-10-15
US10/271,157 2002-10-15
US10/271,047 US7721193B2 (en) 2001-10-18 2002-10-15 System and method for implementing a schema object model in application integration
US10/271,047 2002-10-15
US10/271,410 2002-10-15
US10/271,194 US7080092B2 (en) 2001-10-18 2002-10-15 Application view component for system integration

Publications (1)

Publication Number Publication Date
WO2003044661A1 true WO2003044661A1 (fr) 2003-05-30

Family

ID=27581209

Family Applications (5)

Application Number Title Priority Date Filing Date
PCT/US2002/033090 WO2003034228A1 (fr) 2001-10-18 2002-10-17 Systeme et procede de mise en oeuvre d'un modele objet de schema dans une integration d'application
PCT/US2002/033097 WO2003044661A1 (fr) 2001-10-18 2002-10-17 Systeme et procede de mise en oeuvre d'adaptateur de service
PCT/US2002/033098 WO2003034285A1 (fr) 2001-10-18 2002-10-17 Composant de vue d'application pour intégration de systèmes
PCT/US2002/033183 WO2003034182A2 (fr) 2001-10-18 2002-10-17 Systeme et procede de gestion de fonctionnalite transactionnelle de flux de travaux
PCT/US2002/033184 WO2003034183A2 (fr) 2001-10-18 2002-10-17 Systeme et procede utilisant une architecture de connecteur pour l'integration d'une application

Family Applications Before (1)

Application Number Title Priority Date Filing Date
PCT/US2002/033090 WO2003034228A1 (fr) 2001-10-18 2002-10-17 Systeme et procede de mise en oeuvre d'un modele objet de schema dans une integration d'application

Family Applications After (3)

Application Number Title Priority Date Filing Date
PCT/US2002/033098 WO2003034285A1 (fr) 2001-10-18 2002-10-17 Composant de vue d'application pour intégration de systèmes
PCT/US2002/033183 WO2003034182A2 (fr) 2001-10-18 2002-10-17 Systeme et procede de gestion de fonctionnalite transactionnelle de flux de travaux
PCT/US2002/033184 WO2003034183A2 (fr) 2001-10-18 2002-10-17 Systeme et procede utilisant une architecture de connecteur pour l'integration d'une application

Country Status (5)

Country Link
EP (1) EP1444609A4 (fr)
JP (1) JP2005506618A (fr)
CN (1) CN1585948A (fr)
AU (3) AU2002347926A1 (fr)
WO (5) WO2003034228A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104731606A (zh) * 2015-04-10 2015-06-24 上海普坤信息科技有限公司 基于识别抓取技术实现企业应用集成管理的系统及方法

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7562041B2 (en) 2001-01-09 2009-07-14 International Business Machines Corporation Method and apparatus for facilitating business processes
TW200419413A (en) 2003-01-13 2004-10-01 I2 Technologies Inc Master data management system for centrally managing core reference data associated with an enterprise
US7657832B1 (en) * 2003-09-18 2010-02-02 Adobe Systems Incorporated Correcting validation errors in structured documents
KR101022169B1 (ko) 2004-02-10 2011-03-17 주식회사 케이티 Xml 서비스 오더 검증 시스템 및 방법
US8660880B2 (en) * 2004-03-04 2014-02-25 International Business Machines Corporation System and method for workflow enabled link activation
CN101076793A (zh) * 2004-08-31 2007-11-21 国际商业机器公司 企业数据集成系统的体系结构
US20060069605A1 (en) * 2004-09-29 2006-03-30 Microsoft Corporation Workflow association in a collaborative application
US7853961B2 (en) * 2005-02-28 2010-12-14 Microsoft Corporation Platform for data services across disparate application frameworks
US7523444B2 (en) * 2005-06-27 2009-04-21 Microsoft Corporation Managed automation programming model
US9569556B2 (en) * 2005-08-19 2017-02-14 Google Inc. Software architecture for displaying information content from plug-in modules in a user interface
US20070156487A1 (en) * 2005-12-29 2007-07-05 Microsoft Corporation Object model on workflow
US8849691B2 (en) 2005-12-29 2014-09-30 Microsoft Corporation Modeling user input and interaction in workflow based applications
AU2007262660B2 (en) * 2006-06-21 2013-01-31 Richard Slamkovic Middleware broker
EP1944695A1 (fr) * 2007-01-15 2008-07-16 Software Ag Procédé et système de surveillance d'un système logiciel
US20090138891A1 (en) * 2007-11-27 2009-05-28 Winig Robert J Integrating service-oriented architecture applications with a common messaging interface
US9354847B2 (en) 2008-12-29 2016-05-31 Microsoft Technology Licensing, Llc Interface infrastructure for a continuation based runtime
JP5596320B2 (ja) * 2009-09-07 2014-09-24 任天堂株式会社 情報処理プログラムおよび情報処理装置
CN102687151B (zh) * 2009-09-28 2016-03-30 皇家飞利浦电子股份有限公司 处理dicom结构的报告内容的通用方法
US8589555B2 (en) * 2010-01-11 2013-11-19 Nec Laboratories America, Inc. Virtualization and consolidation analysis engine for enterprise data centers
CN107908626A (zh) * 2016-12-30 2018-04-13 上海壹账通金融科技有限公司 公司相似度的计算方法及装置
CN116755692B (zh) * 2023-08-18 2023-11-24 山东为农信息科技有限公司 涉及安卓系统的无限层级选择方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1061445A2 (fr) * 1999-06-14 2000-12-20 Sun Microsystems, Inc. Gestion d'entreprise orientée Web avec interface client indépendante du transport
US6226788B1 (en) * 1998-07-22 2001-05-01 Cisco Technology, Inc. Extensible network management system
US6269373B1 (en) * 1999-02-26 2001-07-31 International Business Machines Corporation Method and system for persisting beans as container-managed fields

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2320112B (en) * 1996-12-07 2001-07-25 Ibm High-availability computer server system
US6154738A (en) * 1998-03-27 2000-11-28 Call; Charles Gainor Methods and apparatus for disseminating product information via the internet using universal product codes
CA2248634C (fr) * 1998-09-24 2004-02-24 Ibm Canada Limited-Ibm Canada Limitee Chassis commun de connexion
US6226675B1 (en) * 1998-10-16 2001-05-01 Commerce One, Inc. Participant server which process documents for commerce in trading partner networks
AU776938B2 (en) * 1998-11-18 2004-09-30 Saga Software, Inc. Extensible distributed enterprise application integration system
US6356906B1 (en) * 1999-07-26 2002-03-12 Microsoft Corporation Standard database queries within standard request-response protocols
US6438594B1 (en) * 1999-08-31 2002-08-20 Accenture Llp Delivering service to a client via a locally addressable interface
US6721777B1 (en) * 2000-05-24 2004-04-13 Sun Microsystems, Inc. Modular and portable deployment of a resource adapter in an application server
US7496687B2 (en) * 2002-05-01 2009-02-24 Bea Systems, Inc. Enterprise application platform
US20030233631A1 (en) * 2002-06-13 2003-12-18 Ambrose Curry Web services development method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6226788B1 (en) * 1998-07-22 2001-05-01 Cisco Technology, Inc. Extensible network management system
US6269373B1 (en) * 1999-02-26 2001-07-31 International Business Machines Corporation Method and system for persisting beans as container-managed fields
EP1061445A2 (fr) * 1999-06-14 2000-12-20 Sun Microsystems, Inc. Gestion d'entreprise orientée Web avec interface client indépendante du transport

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104731606A (zh) * 2015-04-10 2015-06-24 上海普坤信息科技有限公司 基于识别抓取技术实现企业应用集成管理的系统及方法

Also Published As

Publication number Publication date
WO2003034183A3 (fr) 2003-12-04
WO2003034182A3 (fr) 2004-07-08
AU2002347919A1 (en) 2003-06-10
JP2005506618A (ja) 2005-03-03
AU2002347926A1 (en) 2003-04-28
WO2003034228A1 (fr) 2003-04-24
EP1444609A4 (fr) 2007-09-05
AU2002347927A1 (en) 2003-04-28
WO2003034182A2 (fr) 2003-04-24
WO2003034285A1 (fr) 2003-04-24
EP1444609A1 (fr) 2004-08-11
CN1585948A (zh) 2005-02-23
WO2003034183A2 (fr) 2003-04-24

Similar Documents

Publication Publication Date Title
US7831655B2 (en) System and method for implementing a service adapter
US7350184B2 (en) System and method for enterprise application interactions
WO2003044661A1 (fr) Systeme et procede de mise en oeuvre d'adaptateur de service
US6721777B1 (en) Modular and portable deployment of a resource adapter in an application server
US20020116454A1 (en) System and method for providing communication among legacy systems using web objects for legacy functions
US6976061B1 (en) Resource adapter and XML descriptor for use in a client server environment utilizing an enterprise information system
US7490331B2 (en) Mapping to and from native type formats
US20030074217A1 (en) Resource adapter and integrated development environment
Myerson The complete book of middleware
US20050114692A1 (en) Systems, methods and software to configure and support a telecommunications system
US20050114240A1 (en) Bidirectional interfaces for configuring OSS components
Powers Developing ASP components
Mykkänen et al. Component and Service Technology Families
Fatoohi et al. Middleware for Building Distributed Applications Infrastructure
Künzl Development of a Workflow-based Infrastructure for Managing and Executing Web Services
Loeser et al. dLIMIT—A middleware framework for loosely-coupled database federations
Edition Introduction to WebSphere Application Server
Benns et al. What's in the Middle?
AU2002347920A1 (en) Application view component for system integration
Holloway Engineering Analysis and Literature Review of the use of CORBA on Distributed Object-Oriented Systems
Zhang A comparative study of DCOM/CORBA and. NET/J2EE
Annex GCSS-AF
Pudney CORBA & The OMA
CA2420776A1 (fr) Mappage a destination et a partir de formats d'origine

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LU MC NL PT SE SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP