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>