You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsif-dev@ws.apache.org by an...@apache.org on 2003/03/11 12:22:22 UTC

cvs commit: xml-axis-wsif/java/test/defects/ogsa counterPort.wsdl CounterPortTypeImpl.java CounterServiceTestCase.java CounterPortType.java counterBinding.wsdl DeploymentDescriptor.xml counter.wsdl

antelder    2003/03/11 03:22:22

  Added:       java/test/defects/ogsa counterPort.wsdl
                        CounterPortTypeImpl.java
                        CounterServiceTestCase.java CounterPortType.java
                        counterBinding.wsdl DeploymentDescriptor.xml
                        counter.wsdl
  Log:
  Testcase for the OGSA problems relating to bugzilla 16380
  
  Revision  Changes    Path
  1.1                  xml-axis-wsif/java/test/defects/ogsa/counterPort.wsdl
  
  Index: counterPort.wsdl
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <definitions name="CounterDefinition"
  targetNamespace="http://samples.ogsa.globus.org/counter/counter_port_type"
  xmlns:tns="http://samples.ogsa.globus.org/counter/counter_port_type"
  xmlns="http://schemas.xmlsoap.org/wsdl/"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  
  <types>
  <xsd:schema targetNamespace="http://samples.ogsa.globus.org/counter/counter_port_type"
  xmlns:tns="http://samples.ogsa.globus.org/counter/counter_port_type"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:complexType name="ValueType">
  <xsd:sequence>
  <xsd:element name="value" type="xsd:int"/>
  </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="ReturnValueType">
  <xsd:sequence>
  <xsd:element name="returnValue" type="xsd:int"/>
  </xsd:sequence>
  </xsd:complexType>
  <xsd:element name="add" type="tns:ValueType"/>
  <xsd:element name="addResponse" type="tns:ReturnValueType"/>
  <xsd:element name="subtract" type="tns:ValueType"/>
  <xsd:element name="subtractResponse" type="tns:ReturnValueType"/>
  <xsd:element name="getValue">
  <xsd:complexType/>
  </xsd:element>
  <xsd:element name="getValueResponse" type="tns:ReturnValueType"/>
  </xsd:schema>
  </types>
  
  <message name="AddInputMessage">
  <part name="parameters" element="tns:add"/>
  </message>
  <message name="AddOutputMessage">
  <part name="parameters" element="tns:addResponse"/>
  </message>
  <message name="SubtractInputMessage">
  <part name="parameters" element="tns:subtract"/>
  </message>
  <message name="SubtractOutputMessage">
  <part name="parameters" element="tns:subtractResponse"/>
  </message>
  <message name="GetValueInputMessage">
  <part name="parameters" element="tns:getValue"/>
  </message>
  <message name="GetValueOutputMessage">
  <part name="parameters" element="tns:getValueResponse"/>
  </message>
  
  <portType name="CounterPortType">
  <operation name="add">
  <input message="tns:AddInputMessage"/>
  <output message="tns:AddOutputMessage"/>
  </operation>
  <operation name="subtract">
  <input message="tns:SubtractInputMessage"/>
  <output message="tns:SubtractOutputMessage"/>
  </operation>
  <operation name="getValue">
  <input message="tns:GetValueInputMessage"/>
  <output message="tns:GetValueOutputMessage"/>
  </operation>
  </portType>
  
  </definitions>
  
  
  1.1                  xml-axis-wsif/java/test/defects/ogsa/CounterPortTypeImpl.java
  
  Index: CounterPortTypeImpl.java
  ===================================================================
  /**
   * CounterPortType.java
   *
   * This file was auto-generated from WSDL
   * by the Apache Axis WSDL2Java emitter.
   */
  
  package defects.ogsa;
  
  public class CounterPortTypeImpl {
  
      int value;
      	
  	public CounterPortTypeImpl() {
  		value = 0;
  	}
  
  
      public int add(int x) {
      	value += x;
      	return value;
      }
  
      public int subtract(int x) {
      	value -= x;
      	return value;
      }
      
      public int getValue() {
      	return value;
      }
      
  }
  
  
  
  1.1                  xml-axis-wsif/java/test/defects/ogsa/CounterServiceTestCase.java
  
  Index: CounterServiceTestCase.java
  ===================================================================
  /**
   * CounterServiceTestCase.java
   *
   * This file was auto-generated from WSDL
   * by the Apache WSIF WSDL2Java emitter.
   */
  
  package defects.ogsa;
  
  import java.rmi.RemoteException;
  import java.util.Iterator;
  
  import junit.framework.Test;
  import junit.framework.TestCase;
  import junit.framework.TestSuite;
  import junit.textui.TestRunner;
  
  import org.apache.wsif.WSIFConstants;
  import org.apache.wsif.WSIFException;
  import org.apache.wsif.WSIFMessage;
  import org.apache.wsif.WSIFOperation;
  import org.apache.wsif.WSIFPort;
  import org.apache.wsif.WSIFService;
  import org.apache.wsif.WSIFServiceFactory;
  
  public class CounterServiceTestCase extends TestCase {
  
      public CounterServiceTestCase(String name) {
          super(name);
      }
  
      public static Test suite() {
          return new TestSuite(CounterServiceTestCase.class);
      }
  
      protected void doitDIICounterPortType(String portName) {
          try {
              WSIFServiceFactory factory = WSIFServiceFactory.newInstance();
              factory.setFeature(
                  WSIFConstants.WSIF_FEATURE_AUTO_MAP_TYPES,
                  new Boolean(true));
  
              WSIFService service =
                  factory.getService(
                      "bin/defects/ogsa/counter.wsdl",
                      "http://samples.ogsa.globus.org/counter",
                      "CounterService",
                      "http://samples.ogsa.globus.org/counter/counter_port_type",
                      "CounterPortType");
  
              WSIFPort port = service.getPort(portName);
  
              executeOpAdd(port);
              executeOpSubtract(port);
              executeOpGetValue(port);
  
          } catch (Exception ex) {
              ex.printStackTrace();
              assertTrue("doitDIICounterPortType got exception: " + ex.getLocalizedMessage(), false);
          }
      }
  
      protected void executeOpAdd(WSIFPort wsifPort) throws WSIFException {
  
          WSIFOperation op = wsifPort.createOperation("add");
  
          WSIFMessage inMsg = op.createInputMessage();
          WSIFMessage outMsg = op.createOutputMessage();
          WSIFMessage faultMsg = op.createFaultMessage();
  
          // TODO: change these parameter values
          int p0 = 1;
          inMsg.setIntPart("value", p0);
  
          boolean success =
              op.executeRequestResponseOperation(inMsg, outMsg, faultMsg);
  
          if (success) {
              System.out.println("operation 'add' successfull:");
              int r0 = outMsg.getIntPart("returnValue");
              System.out.println("returnValue: " + r0);
  
              // TODO: add tests for return parts here
  
          } else {
              System.err.println("operation 'add' returned a fault:");
              for (Iterator i = faultMsg.getPartNames(); i.hasNext();) {
                  System.err.println(faultMsg.getObjectPart((String) i.next()));
              }
              assertTrue("executeOpAdd returned a fault!!", false);
          }
      }
  
      protected void executeOpSubtract(WSIFPort wsifPort) throws WSIFException {
  
          WSIFOperation op = wsifPort.createOperation("subtract");
  
          WSIFMessage inMsg = op.createInputMessage();
          WSIFMessage outMsg = op.createOutputMessage();
          WSIFMessage faultMsg = op.createFaultMessage();
  
          // TODO: change these parameter values
          int p0 = 2;
          inMsg.setIntPart("value", p0);
  
          boolean success =
              op.executeRequestResponseOperation(inMsg, outMsg, faultMsg);
  
          if (success) {
              System.out.println("operation 'subtract' successfull:");
              int r0 = outMsg.getIntPart("returnValue");
              System.out.println("returnValue: " + r0);
  
              // TODO: add tests for return parts here
  
          } else {
              System.err.println("operation 'subtract' returned a fault:");
              for (Iterator i = faultMsg.getPartNames(); i.hasNext();) {
                  System.err.println(faultMsg.getObjectPart((String) i.next()));
              }
              assertTrue("executeOpSubtract returned a fault!!", false);
          }
      }
  
      protected void executeOpGetValue(WSIFPort wsifPort) throws WSIFException {
  
          WSIFOperation op = wsifPort.createOperation("getValue");
  
          WSIFMessage ctx = op.getContext();
          ctx.setObjectPart(
              WSIFConstants.CONTEXT_OPERATION_STYLE,
              WSIFConstants.CONTEXT_OPERATION_STYLE_WRAPPED);
          op.setContext(ctx);
  
          WSIFMessage inMsg = op.createInputMessage();
          WSIFMessage outMsg = op.createOutputMessage();
          WSIFMessage faultMsg = op.createFaultMessage();
  
          // TODO: change these parameter values
          boolean success =
              op.executeRequestResponseOperation(inMsg, outMsg, faultMsg);
  
          if (success) {
              System.out.println("operation 'getValue' successfull:");
              int r0 = outMsg.getIntPart("returnValue");
              System.out.println("returnValue: " + r0);
  
              // TODO: add tests for return parts here
  
          } else {
              System.err.println("operation 'getValue' returned a fault:");
              for (Iterator i = faultMsg.getPartNames(); i.hasNext();) {
                  System.err.println(faultMsg.getObjectPart((String) i.next()));
              }
              assertTrue("executeOpGetValue returned a fault!!", false);
          }
      }
  
      protected void doitStubCounterPortType(String portName) {
          try {
              WSIFServiceFactory factory = WSIFServiceFactory.newInstance();
  
              WSIFService service =
                  factory.getService(
                      "bin/defects/ogsa/counter.wsdl",
                      "http://samples.ogsa.globus.org/counter",
                      "CounterService",
                      "http://samples.ogsa.globus.org/counter/counter_port_type",
                      "CounterPortType");
  
              WSIFMessage ctx = service.getContext();
              ctx.setObjectPart(
                  WSIFConstants.CONTEXT_OPERATION_STYLE,
                  WSIFConstants.CONTEXT_OPERATION_STYLE_WRAPPED);
              service.setContext(ctx);
  
              CounterPortType stub =
                  (CounterPortType) service.getStub(portName, CounterPortType.class);
  
              executeOpAdd(stub);
              executeOpSubtract(stub);
              executeOpGetValue(stub);
  
          } catch (Exception ex) {
              ex.printStackTrace();
              assertTrue("doitStubCounterPortType got exception: " + ex.getLocalizedMessage(), false);
          }
      }
  
      protected void executeOpAdd(CounterPortType stub) throws RemoteException {
  
          // TODO: change these params to required values
          int p0 = 3;
  
          int returnValue = stub.add(p0);
  
          System.out.println("operation 'add' returned: " + returnValue);
  
          // TODO: test return parts here
          // assertTrue("operation add returned null!!", returnValue != null);
      }
  
      protected void executeOpSubtract(CounterPortType stub) throws RemoteException {
  
          // TODO: change these params to required values
          int p0 = 4;
  
          int returnValue = stub.subtract(p0);
  
          System.out.println("operation 'subtract' returned: " + returnValue);
  
          // TODO: test return parts here
          // assertTrue("operation subtract returned null!!", returnValue != null);
      }
  
      protected void executeOpGetValue(CounterPortType stub) throws RemoteException {
  
          // TODO: change these params to required values
  
          int returnValue = stub.getValue();
  
          System.out.println("operation 'getValue' returned: " + returnValue);
  
          // TODO: test return parts here
          // assertTrue("operation getValue returned null!!", returnValue != null);
      }
  
      public void testDoitDIICounterPortTypeCounterPort() {
          doitDIICounterPortType("CounterPort");
      }
  
      public void testDoitStubCounterPortTypeCounterPort() {
          doitStubCounterPortType("CounterPort");
      }
  
      public static void main(String[] args) {
          TestRunner.run(suite());
      }
  }
  
  
  
  1.1                  xml-axis-wsif/java/test/defects/ogsa/CounterPortType.java
  
  Index: CounterPortType.java
  ===================================================================
  /**
   * CounterPortType.java
   *
   * This file was auto-generated from WSDL
   * by the Apache Axis WSDL2Java emitter.
   */
  
  package defects.ogsa;
  
  public interface CounterPortType extends java.rmi.Remote {
      public int add(int value) throws java.rmi.RemoteException;
      public int subtract(int value) throws java.rmi.RemoteException;
      public int getValue() throws java.rmi.RemoteException;
  }
  
  
  
  1.1                  xml-axis-wsif/java/test/defects/ogsa/counterBinding.wsdl
  
  Index: counterBinding.wsdl
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <definitions name="CounterDefinition"
  targetNamespace="http://samples.ogsa.globus.org/counter/counter_bindings"
  xmlns:counter-port-type="http://samples.ogsa.globus.org/counter/counter_port_type"
  xmlns="http://schemas.xmlsoap.org/wsdl/"
  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
  
  <import location="counterPort.wsdl"
  namespace="http://samples.ogsa.globus.org/counter/counter_port_type"/>
  
  <binding name="CounterSOAPBinding" type="counter-port-type:CounterPortType">
  <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
  <operation name="add">
  <soap:operation soapAction="http://samples.ogsa.globus.org/counter#add"/>
  <input>
  <!--
  <soap:body use="literal" namespace="http://samples.ogsa.globus.org/counter"/>
  -->
  <soap:body use="literal" namespace="http://samples.ogsa.globus.org/counter/counter_port_type"/>
  </input>
  <output>
  <soap:body use="literal" namespace="http://samples.ogsa.globus.org/counter"/>
  </output>
  </operation>
  <operation name="subtract">
  <soap:operation soapAction="http://samples.ogsa.globus.org/counter#subtract"/>
  <input>
  <soap:body use="literal" namespace="http://samples.ogsa.globus.org/counter"/>
  </input>
  <output>
  <soap:body use="literal" namespace="http://samples.ogsa.globus.org/counter"/>
  </output>
  </operation>
  <operation name="getValue">
  <soap:operation soapAction="http://samples.ogsa.globus.org/counter#getValue"/>
  <input>
  <soap:body use="literal" namespace="http://samples.ogsa.globus.org/counter"/>
  </input>
  <output>
  <soap:body use="literal" namespace="http://samples.ogsa.globus.org/counter"/>
  </output>
  </operation>
  </binding>
  
  </definitions>
  
  
  
  1.1                  xml-axis-wsif/java/test/defects/ogsa/DeploymentDescriptor.xml
  
  Index: DeploymentDescriptor.xml
  ===================================================================
  <isd:service xmlns:isd="http://xml.apache.org/xml-soap/deployment"
               id="http://samples.ogsa.globus.org/counter/counter_port_type"
               type="message">
    <isd:provider type="java"
                  scope="Application"
                  methods="add subtract getValue">
      <isd:java class="defects.ogsa.CounterPortTypeImpl" static="false"/>
    </isd:provider>
  
    <isd:faultListener>org.apache.soap.server.DOMFaultListener</isd:faultListener>
  
  </isd:service>
  
  
  
  1.1                  xml-axis-wsif/java/test/defects/ogsa/counter.wsdl
  
  Index: counter.wsdl
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <definitions name="CounterDefinition"
  targetNamespace="http://samples.ogsa.globus.org/counter"
  xmlns="http://schemas.xmlsoap.org/wsdl/"
  xmlns:counter-bindings="http://samples.ogsa.globus.org/counter/counter_bindings"
  xmlns:grid-service-bindings="http://ogsa.gridforum.org/service/grid_service_bindings"
  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
  
  <import location="counterBinding.wsdl"
  namespace="http://samples.ogsa.globus.org/counter/counter_bindings"/>
  
  <service name="CounterService">
  <documentation>sample counter service demonstrating simple state management</documentation>
  
  <port binding="counter-bindings:CounterSOAPBinding"
  name="CounterPort">
  <soap:address location="http://localhost:8080/soap/servlet/rpcrouter"/>
  </port>
  
  </service>
  
  </definitions>