XSD types .NET interoperability  Locate

Overview  Locate

This demo shows SESJ interoperability with .NET on the XSD schema types (2001 W3C recommendation) level. It contains a set of echo operations that return the objects with which they are called. Separate SESJ services and .NET clients are made for both the RPC/ENC and DOC/LIT specifications.

The following table shows supported XSD schema types and their mapping to Java types:

XMLSchema type      Java Type
-----------------------------------------------------------------------
anyURI              java.lang.String
base64Binary        byte[]
boolean             boolean
byte                byte
date                org.idoox.wasp.serialization.xsdbuiltin.Date
dateTime            java.util.Date
decimal             java.math.BigDecimal
double              double
duration            org.idoox.wasp.serialization.xsdbuiltin.Duration
ENTITIES            java.lang.String
ENTITY              java.lang.String
float               float
gDay                org.idoox.wasp.serialization.xsdbuiltin.GDay
gMonth              org.idoox.wasp.serialization.xsdbuiltin.GMonth
gMonthDay           org.idoox.wasp.serialization.xsdbuiltin.GMonthDay
gYear               org.idoox.wasp.serialization.xsdbuiltin.GYear
gYearMonth          org.idoox.wasp.serialization.xsdbuiltin.GYearMonth
hexBinary           org.idoox.wasp.serialization.xsdbuiltin.HexBinary
ID                  java.lang.String
IDREF               java.lang.String
IDREFS              java.lang.String
int                 int
integer             java.math.BigInteger
language            java.lang.String
long                long
Name                java.lang.String
NCName              java.lang.String
negativeInteger     java.math.BigInteger
NMTOKEN             java.lang.String
NMTOKENS            java.lang.String
nonNegativeInteger  java.math.BigInteger
nonPositiveInteger  java.math.BigInteger
normalizedString    org.idoox.wasp.serialization.xsdbuiltin.NormalizedString
NOTATION            java.lang.String
positiveInteger     java.math.BigInteger
QName               javax.xml.namespace.QName
short               short
string              java.lang.String
time                org.idoox.wasp.serialization.xsdbuiltin.Time
token               org.idoox.wasp.serialization.xsdbuiltin.Token
unsignedByte        java.lang.Short
unsignedInt         java.lang.Long
unsignedLong        java.math.BigInteger
unsignedShort       java.lang.Integer

Demo Package Description  Locate

The docLit\ and rpcEnc\ subdirectories each contain the files described in Files and Directories and the following:

File or directoryDescription
src\demo\interop\msInterop\dotNetToWasp\server\

Server source code

src\client\

C# client source code

Prerequisites and Preparatory Steps  Locate

The following list outlines the software and service packs that you will need to be able to compile and run C# clients and access the features of ASP.NET:

  • Microsoft .NET Framework and .NET Framework SDK.

  • IIS with the latest security updates (must be installed prior to installing the .NET Framework and .NET Framework SDK)

In addition, you will need administrative rights on the computer.

Building and Running Demos  Locate

You can run the demo using the "run.sh" (for UNIX) or "run.bat" (for Windows) scripts. Running the script without arguments prints out a help message on screen.

  1. Ensure that you've started SESJ.

  2. Compile EchoService:

    Windows: run.bat make_service
    Linux:   ./run.sh make_service
    
  3. Deploy EchoService on the SESJ:

    Windows: run.bat deploy_service
    Linux:   ./run.sh deploy_service
    
  4. Make the client executable:

    Windows: run.bat make_client
    
  5. Run the Client (it calls EchoService):

    Windows: run.bat run_client
    
  6. Undeploy HelloService from the SESJ:

    Windows: run.bat undeploy_service
    Linux:   ./run.sh undeploy_service