Shoe Information Network
Home
Message Dispatcher
Reporting Tools
Offline Viewer
Integration Toolkit
Data Feeder
Shoenet Portal
Documents
Shoenet
>
Data Feeder
Shoenet Schema
Videos
End Users Assessment
Links
Inescop
Collaborative Zone
Cec Made Shoe
Data Feeder
Introduction
The Shoenet data feeder is a component linked to the Shoenet (Mercure) Message Dispatcher that enables the retrieval of data from the business messages exchanged between partners. This information can be then sent to external engines in order to feed applications by means of calls to web services.
In this project, it has been implemented to feed the traceability system, providing data related to the models described in the exchanged messages.
In order to do so, some changes have been made in the company profile description. In particular, the following data was added for each company:
Type of messages to be considered (order, invoice, etc)
Service endpoint
Network (following the traceability platform description)
User (for the traceability platform security control)
Password (for the traceability platform security control)
The following interaction diagram shows the relationship between the different framework systems.
Figure 6 - Shoenet - relationship between the different framework systems
Functional description
Figure 7 - Shoenet - data feeder
The Shoenet data feeder is comprised of:
Feeder daemon: It is a daemon service that checks the XML document repository and searches for new messages of companies that are offering messages to the traceability engine (in this specific case). Furthermore, it triggers the parsing and communication modules when new messages to be fed are found. The feeder daemon is executed every 10 seconds by default. But this time period can be configured in the properties file.
Parsing module: This component is called by the feeder daemon, and retrieves the XML message from the document repository. After that, it checks the availability of additional files attached to the message (pdf, images, etc) and recovers them from the raw files repository. Then, it recovers the information to be sent to the traceability engine, and extracts it from the message.
Communication Module: This module implements the web service client that feeds the traceability system.
Technical description and interoperability problems found
The Shoenet data feeder has been implemented using the following tools:
Java SE 1.5 as development and execution platform
Axis 1 for web services client implementation
Castor v0.9.7 for XML processing.
It was necessary to address the different interoperability problems that arose during the implementation due to the interaction of web services (server side) implemented in .NET and the client implemented in Java.
Basically, these problems were related to the intention of using AXIS2 instead of AXIS1 for the development, and the way .net implements the session management mechanisms. In particular, the management of this session is based on cookies pass-through. In principle, AXIS2 implements this mechanism but it is not working properly in the current version (as reported in the AXIS2 mailing list and TODOs for next release). Therefore, after some time trying to implement the service using AXIS2, the team finally tested AXIS1 and its built-in session management worked properly with .NET.