The previous topics explain CSOS functionality as incorporated into Interchange. There is another, lightweight way to move CSOS orders. That is by using WebTrader.
WebTrader is a way to move documents between a partner equipped only with a computer, a browser and an Internet connection and a partner who uses Interchange.
In a CSOS context, WebTrader has a specific role. That is to digitally sign purchase orders with the browser user’s certificate, in compliance with federal regulations. This is performed as one step in an interactive pharmaceutical ordering process. Much of this process can take place outside of WebTrader. WebTrader only comes into play in the step where signing is required.
The following outlines such a scenario. In this example, a retail pharmacy plays the role of WebTrader. A pharmaceutical distribution company is the partner who uses Interchange as its B2B gateway and is the WebTrader sponsor.
A Java applet is used for signing CSOS documents on the browser user’s machine and uploading to an Interchange host. Instructions for incorporating the applet on your web page are in the README.html
file in <install directory>\webapps\wtapplet\csos
. In the same directory is a sample file, testCsosApplet.html, that demonstrates the applet. To try out the test page, start Activator server and point a browser to the following URL:
http://<host>:6080/wtapplet/csos/testCsosApplet.html
The variable <host> is the IP address or fully qualified domain name of the machine running Activator server.
Web traders’ must have JCE policy files added to the JRE plug-in for their browsers (see WebTrader partner requirements). Web traders can perform this task manually. Or, you can use the applet’s policy installer. This automatically installs the JCE policy files in a user’s browser when testCsosApplet.html is run. The README.html file has more information. Before version 5.5.1, installing JCE files was solely a manual process.
The client system used by a CSOS WebTrader end user is configured with JRE 8. This system automatically downloads unlimited strength JCE policy files from the Activator server to which it connects (if the files do not exist already exist on the client machine).
Note | This download requires, as a prerequisite, that the appropriate Unlimited Strength policy files exist in the following folder of the CSOS licensed Activator server: |
.../Interchange/webapps/wtapplet/jcepolicy
The download of these policy files succeeds but, in typical client configurations, the policy files cannot be copied to the local destination directory ...\Java\jre\lib\security and an "Access denied" error can be viewed by running a debug on the applet code.
The reason for the failure is that the JRE (by default) is located in the C:\Program Files
or C:\Program Files (x86)
folder which is write-protected by Windows User Account Control.
In normal use, there is no specific indication to the end user that the policy file download has failed to copy to the directory. However the standard message that the applet has not loaded yet persists with the mention to contact the administrator.
To view the progress of the policy down load you can open a Java console.
With the console activated, you can view details of the Unlimited Strength Policy download failure.
There are two options for avoiding this policy download failure:
With a Java console, open you should now be able to confirm the success of the policy download. The end user can proceed with trading activities.
To establish a relationship with a WebTrader partner, an Interchange sponsor must first have its own community. Next, the sponsor must add a partner for the WebTrader partner. There are two ways to do this. The sponsor can manually add the partner or direct the WebTrader partner to a self-registration web site hosted on the Interchange server.
To manually add a WebTrader partner, see Add a WebTrader partner.
To direct a WebTrader partner to a self-registration web site, see
In your community, set up an application pickup that forces the sender to be the WebTrader partner and the receiver to be your community. You can do this using the From routing ID and To routing ID attributes on the message attributes tab of the exchange’s maintenance page. See Message attributes tab.
You also need to set up a CSOS order source. See Identify CSOS purchase orders.
Once configuration is completed, copy a purchase order document to the application pickup directory. Activator consumes the message and writes it to the WebTrader’s document store on the file system used by Activator. Typically, WebTraders’ document stores are under <install directory>\common\webtrader
. Message Tracker reports the message as delivered to the WebTrader partner, although the document file remains on the sponsor’s file system. See Approve CSOS documents in WebTrader for the WebTrader’s steps to approve and sign the document.
The WebTrader partner needs a valid DEA-issued certificate with which to sign CSOS purchase orders. The signature is evidence of the WebTrader partner’s approval of such orders. The Interchange sponsor, upon receiving signed orders, verifies the signature against DEA-issued root certificates. The WebTrader partner's browser must haveJava Runtime Environment (JRE) 1.6. The WebTrader partner also must deploy Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0 or 6.0.
Use JRE 1.5.0_05 for <applet> (requires restart)
Caution |
|
COPYRIGHT.html
local_policy.jar
README.txt
US_export_policy.jar
C:\Program Files\Java\jre1.5.0_05\lib\security
local_policy.jar
and US_export_policy.jar
.local_policy.jar
and US_export_policy.jar
from the jce folder to the security directory.Use this procedure if you are a WebTrader partner and want to check WebTrader for CSOS documents awaiting signing.
C:\Documents and Settings\<user ID>\.cyclone\csos_backup
The CSOS order signing applet can chunk large messages before sending.
A chunked message is a large message broken into smaller pieces for sending to a partner.
The applet on its own chunks messages larger than 2 gigabytes. However, a parameter named httpChunkingAlwaysOn is available to enable chunking always. A value of true for this parameter enables chunking in the HTTP client regardless of the size of the uploaded payload.
The applet breaks messages into chunks of 64KB. So a file must be larger for chunking to occur.
There are two ways you can use the parameter to enable HTTP chunking.
<applet ...
<param name="httpChunkingAlwaysOn" value="true"/>
</applet>
C:\Documents and Settings
. In your user home directory is a subdirectory named .cyclone. In that directory is a file named applet.properties.httpChunkingAlwaysOn=true