You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-dev@ws.apache.org by "Kellogg, Richard" <RK...@MICROS.COM> on 2002/12/02 22:00:31 UTC

Use of Apache SOAP with Java Plugin

Greetings!

After much trouble shooting, I have successfully used the Apache SOAP Toolkit under the Java Plugin 1.3.1_02.  To do so, you need to add the following to your client applet jar: activation.jar, soap.jar, mail.jar and crimson.jar.  Then you will need to sign your jar.  The use of crimson.jar should only be necessary under 1.3.x.

Could someone please add the following to CVS:

Within the SoapMappingRegistry.java file:

Original source:

    try {
      Class XMISerializer =
        Class.forName("org.apache.soap.util.xml.XMISerializer");
      Class XMIParameterSerializer =
        Class.forName("org.apache.soap.encoding.xmi.XMIParameterSerializer");

      // Register default serializers for XMI encoding style.
      mapTypes(Constants.NS_URI_XMI_ENC, null, null,
               (Serializer)XMISerializer.newInstance(),
               (Deserializer)XMIParameterSerializer.newInstance());

      // Register serializer for Parameter class - not deserializer!
      mapTypes(Constants.NS_URI_XMI_ENC, null, Parameter.class,
               (Serializer)XMIParameterSerializer.newInstance(), null);
    } catch (IllegalAccessException iae) {
    } catch (InstantiationException ie) {
    } catch (ClassNotFoundException cnfe) {
    } catch (NoClassDefFoundError ncdfe) {
      // If the class can't be loaded, continue without it...
    }

New source:
    try {
      Class XMISerializer =
        Class.forName("org.apache.soap.util.xml.XMISerializer");
      Class XMIParameterSerializer =
        Class.forName("org.apache.soap.encoding.xmi.XMIParameterSerializer");

      // Register default serializers for XMI encoding style.
      mapTypes(Constants.NS_URI_XMI_ENC, null, null,
               (Serializer)XMISerializer.newInstance(),
               (Deserializer)XMIParameterSerializer.newInstance());

      // Register serializer for Parameter class - not deserializer!
      mapTypes(Constants.NS_URI_XMI_ENC, null, Parameter.class,
               (Serializer)XMIParameterSerializer.newInstance(), null);
    } catch (IllegalAccessException iae) {
    } catch (InstantiationException ie) {
    } catch (ClassNotFoundException cnfe) {
    } catch (NoClassDefFoundError ncdfe) {
+   } catch (java.security.AccessControlException ace) {
      // If the class can't be loaded, continue without it...
    }

You will see, I have caught the exception generated by the plugin when it cannot find the XMISerializer class.

Happy SOAPing!
Rick Kellogg