Experiment of IFBO as a webservice

Experiment of Asset Suite Integration Framework Business Objects (IFBO) secure web service hosted on Tomcat 5.
 WSDL 1.1
 SOAP 1.2
 JAX-WS 2.1.7
 IFBO 6.0.1
 Java 1.5
 Synchronous



The goal is having IFBO as a secure web service (implemented as a servlet) supporting WSDL and SOAP. Secure web service means TLS/SSL to web service endpoint.



This does not address IFBO publishing as a web service.



Start with with implementing Jax 2.1.7 sample fromwsdl_secure.



Here's what fromwsdl_secure/src/fromwsdl_secure/server/AddNumbersImpl.java
looks like after being used for IFBO at
ifbo-wsdl-xml-secure/src/ifbo_wsdl_xml_secure/server/ifboServiceImpl.java


/*
  Experiment of Asset Suite Integration Framework Business Objects (IFBO) secure web service
  WSDL 1.1
  SOAP 1.2
  JAX-WS 2.1.7
  Java 1.5 Must match version JAX-WS was built with.
  Synchronous

  Note that this is an experimental implemenation of a jaxws web service.
  APIFWAdapterServlet.java was implemented as extending HttpServlet
  and had access to things like:
  getServletConfig().getInitParameter("configDir").
  Could not find the equivalent of this for a web service.
  Any logging necessary should go to System.out and will end up in the
  Tomcat catalina.out log.

PassPortGeek.com Winter 2009
*/

package ifbo_wsdl_xml_secure.server;

import com.indus.apifw.adapter.*;
import com.indus.apifw.inbound.InboundAPIReply;

import javax.xml.transform.Source;
import javax.xml.transform.stream.StreamSource;
import java.io.*;

@javax.jws.WebService (endpointInterface="ifbo_wsdl_xml_secure.server.IfboServicePortType")
public class ifboServiceImpl {

  public String ifboService (String IFBOxml) throws IfboServiceFault_Exception {

    System.out.println ("ifboService xml=" + IFBOxml);

    InboundAPIReply reply = null;
    String replyS = "";
    String configdir = "dir_path/if_ws/config";

    try {

      NativeJavaAdapter adapter = new NativeJavaAdapter(IFBOxml, "UTF8&");

      adapter.setConfigDir(configdir);

      reply = adapter.invokeInboundServices();

    } catch(Throwable theException) {
      theException.printStackTrace();
    }

    return reply.getXMLReplyString();

  }

}

Reply