You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ng...@apache.org on 2006/09/07 20:13:40 UTC
svn commit: r441165 - in /webservices/axis2/trunk/java/modules/jaxws: ./
src/org/apache/axis2/jaxws/client/proxy/ test-resources/wsdl/
test/org/apache/axis2/jaxws/framework/ test/org/apache/axis2/jaxws/sample/
test/org/apache/axis2/jaxws/sample/addnumb...
Author: ngallardo
Date: Thu Sep 7 11:13:39 2006
New Revision: 441165
URL: http://svn.apache.org/viewvc?view=rev&rev=441165
Log:
AXIS2-1114
Contributor: Nikhil Thaker
Additional checking for nulls in the proxy.
Added:
webservices/axis2/trunk/java/modules/jaxws/test-resources/wsdl/AddNumbers.wsdl
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/AddNumbersTests.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersFault_Exception.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortType.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortTypeImpl.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersService.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/AddNumbers.wsdl
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/services.xml
Modified:
webservices/axis2/trunk/java/modules/jaxws/maven.xml
webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/DocLitProxyHandler.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/proxy/ProxyTests.java
Modified: webservices/axis2/trunk/java/modules/jaxws/maven.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/maven.xml?view=diff&rev=441165&r1=441164&r2=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/maven.xml (original)
+++ webservices/axis2/trunk/java/modules/jaxws/maven.xml Thu Sep 7 11:13:39 2006
@@ -78,7 +78,13 @@
<classpath location="${compiled.classes.dir}"/>
<arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/ProxyDocLitnonWrapped.wsdl"/>
</java>
-
+ <ant:echo>Generating java from AddNumbers.wsdl</ant:echo>
+ <java classname="com.sun.tools.xjc.Driver" fork="true">
+ <jvmarg line="${maven.junit.jvmargs}"/>
+ <classpath refid="maven.dependency.classpath"/>
+ <classpath location="${compiled.classes.dir}"/>
+ <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/AddNumbers.wsdl"/>
+ </java>
<ant:echo>Generating java from jaxbsource</ant:echo>
<java classname="com.sun.tools.xjc.Driver" fork="true">
<jvmarg line="${maven.junit.jvmargs}"/>
@@ -194,6 +200,17 @@
</ant:fileset>
</ant:copy>
+ <ant:copy toDir="target/test-classes/services/AddNumbersService/">
+ <ant:fileset dir="target/test-classes">
+ <ant:include name="org/apache/axis2/jaxws/sample/addnumbers/**"/>
+ </ant:fileset>
+ <ant:fileset dir="test/org/apache/axis2/jaxws/sample/addnumbers">
+ <ant:include name="META-INF/**"/>
+ </ant:fileset>
+ <ant:fileset dir="target/classes">
+ <ant:include name="org/apache/axis2/jaxws/server/**"/>
+ </ant:fileset>
+ </ant:copy>
</preGoal>
<!-- Create the API and Impl jars -->
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/DocLitProxyHandler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/DocLitProxyHandler.java?view=diff&rev=441165&r1=441164&r2=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/DocLitProxyHandler.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/proxy/DocLitProxyHandler.java Thu Sep 7 11:13:39 2006
@@ -17,18 +17,15 @@
package org.apache.axis2.jaxws.client.proxy;
import java.beans.IntrospectionException;
-import java.beans.Introspector;
-import java.beans.PropertyDescriptor;
-import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
-import java.util.Hashtable;
+import java.util.Arrays;
+import java.util.HashMap;
import java.util.Map;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
-import javax.xml.bind.annotation.XmlElement;
import javax.xml.stream.XMLStreamException;
import javax.xml.ws.AsyncHandler;
@@ -168,7 +165,7 @@
* @throws InvocationTargetException
*/
- private Object createDocLitWrappedResponse(Method method, MessageContext response)throws IllegalAccessException, ClassNotFoundException, JAXBWrapperException, JAXBException, javax.xml.stream.XMLStreamException, MessageException, IntrospectionException, NoSuchFieldException, InvocationTargetException{
+ private Object createDocLitWrappedResponse(Method method, MessageContext response)throws ClassNotFoundException, JAXBWrapperException, JAXBException, javax.xml.stream.XMLStreamException, MessageException{
Class wrapperClazz = proxyDescriptor.getResponseWrapperClass(isAsync());
String resultName = proxyDescriptor.getWebResultName(isAsync());
JAXBContext ctx = JAXBContext.newInstance(new Class[]{wrapperClazz});
@@ -198,7 +195,7 @@
* @param response
* @return
*/
- private Object createDocLitNONWrappedResponse(Method method, MessageContext response) throws IllegalAccessException, JAXBException, MessageException, XMLStreamException, InvocationTargetException, IntrospectionException, NoSuchFieldException{
+ private Object createDocLitNONWrappedResponse(Method method, MessageContext response) throws JAXBWrapperException, JAXBException, MessageException, XMLStreamException{
Message responseMsg = response.getMessage();
Class returnType = proxyDescriptor.getReturnType(isAsync());
@@ -226,51 +223,6 @@
}
- /*
- * this method return property descriptor to read or write the property value.
- * It reads all the property descriptor on the java bean. Then determins if java field name is the the actual property who's pd has been requested.
- * if true it returns pd.
- * Also the propertyName supplied is compared with java field name and if they dont match than xmlElement annotation on JAXB Object is lookedup. if they
- * dont match then xmlElement is compared with java field name using lowercases and finally return the pd.
- * if property descriptor not found for a perticular property just return null.
- */
- private PropertyDescriptor getPropertyDescriptor(Class returnClazz, String propertyName)throws IntrospectionException, NoSuchFieldException{
- PropertyDescriptor[] allPds = Introspector.getBeanInfo(returnClazz).getPropertyDescriptors();
- Field[] fields = returnClazz.getDeclaredFields();
- for(PropertyDescriptor pd:allPds){
- for(Field field:fields){
- if(propertyName == null){
- //if this happens I will get the first property that has datatype same as return clazz and return its descriptor.
- if(field.getType() == returnClazz){
- return pd;
- }
- }
- String javaFieldName = field.getName();
- String pdName = pd.getDisplayName();
- if(javaFieldName.equals(pdName)){
- if(javaFieldName.equals(propertyName)){
- return pd;
-
- }else{
- XmlElement xmlElement =field.getAnnotation(XmlElement.class);
- if(xmlElement == null){
- //TODO:What happens if xmlElement not defined.
-
- }
- String xmlName =xmlElement.name();
- if(xmlName.equals(propertyName)){
- return pd;
- }
- if(xmlName.toLowerCase().equals(propertyName.toLowerCase())){
- return pd;
- }
- }
- }
- }
- }
-
- throw ExceptionFactory.makeWebServiceException(Messages.getMessage("noWebResultForProperty", propertyName, returnClazz.getName()));
- }
/**
@@ -284,14 +236,12 @@
* @throws InvocationTargetException
* @throws IllegalAccessException
*/
- private Object getWebResultObject(Class wrapperClazz, Object businessObject, String propertyName) throws NoSuchFieldException, IntrospectionException,InvocationTargetException, IllegalAccessException{
- PropertyDescriptor pd = getPropertyDescriptor(wrapperClazz, propertyName);
- if(pd == null){
- //TODO: what happens if pd not found.
- }
- Method readMethod = pd.getReadMethod();
- Object webResult = readMethod.invoke(wrapperClazz.cast(businessObject), null);
- return webResult;
+ private Object getWebResultObject(Class wrapperClazz, Object businessObject, String propertyName) throws JAXBWrapperException{
+
+ JAXBWrapperTool wrapTool = new JAXBWrapperToolImpl();
+ Object[] webResult = wrapTool.unWrap(businessObject,new ArrayList<String>(Arrays.asList(new String[]{propertyName})));
+ return webResult[0];
+
}
private MessageContext initializeRequest(Block messageBlock) throws XMLStreamException, MessageException{
@@ -348,7 +298,7 @@
}
//TODO: Should we move this to OperationDescription.
public Map<String, Object> getParamValues(Object[] objects, ArrayList<String> names){
- Map<String, Object> values = new Hashtable<String, Object>();
+ Map<String, Object> values = new HashMap<String, Object>();
if(objects == null){
return values;
Added: webservices/axis2/trunk/java/modules/jaxws/test-resources/wsdl/AddNumbers.wsdl
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test-resources/wsdl/AddNumbers.wsdl?view=auto&rev=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test-resources/wsdl/AddNumbers.wsdl (added)
+++ webservices/axis2/trunk/java/modules/jaxws/test-resources/wsdl/AddNumbers.wsdl Thu Sep 7 11:13:39 2006
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+
+<definitions name="AddNumbers" targetNamespace="http://org/test/addnumbers"
+ xmlns:tns="http://org/test/addnumbers" xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
+
+
+ <types>
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" targetNamespace="http://org/test/addnumbers">
+ <element name="addNumbersResponse">
+ <complexType>
+ <sequence>
+ <element name="return" type="xsd:int" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="addNumbers">
+ <complexType>
+ <sequence>
+ <element name="arg0" type="xsd:int" />
+ <element name="arg1" type="xsd:int" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="AddNumbersFault">
+ <complexType>
+ <sequence>
+ <element name="faultInfo" type="xsd:string" />
+ <element name="message" type="xsd:string" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="oneWayInt">
+ <complexType>
+ <sequence>
+ <element name="arg0" type="xsd:int" />
+ </sequence>
+ </complexType>
+ </element>
+
+ </xsd:schema>
+ </types>
+
+ <message name="addNumbers">
+ <part name="parameters" element="tns:addNumbers" />
+ </message>
+ <message name="addNumbersResponse">
+ <part name="result" element="tns:addNumbersResponse" />
+ </message>
+ <message name="addNumbersFault">
+ <part name="AddNumbersFault" element="tns:AddNumbersFault" />
+ </message>
+ <message name="oneWayInt">
+ <part name="parameters" element="tns:oneWayInt" />
+ </message>
+
+ <portType name="AddNumbersPortType">
+ <operation name="addNumbers">
+ <input message="tns:addNumbers" name="add" />
+ <output message="tns:addNumbersResponse" name="addResponse" />
+ <fault name="addNumbersFault" message="tns:addNumbersFault" />
+ </operation>
+ <operation name="oneWayInt">
+ <input message="tns:oneWayInt" />
+ </operation>
+ </portType>
+ <binding name="AddNumbersBinding" type="tns:AddNumbersPortType">
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
+ style="document" />
+ <operation name="addNumbers">
+ <soap:operation soapAction="" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ <fault name="addNumbersFault">
+ <soap:fault name="addNumbersFault" use="literal" />
+ </fault>
+ </operation>
+ <operation name="oneWayInt">
+ <soap:operation soapAction="" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ </operation>
+ </binding>
+ <service name="AddNumbersService">
+ <port name="AddNumbersPort" binding="tns:AddNumbersBinding">
+ <soap:address
+ location="http://localhost:9080/AddNumber/AddNumbersImplService" />
+ </port>
+ </service>
+</definitions>
Modified: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java?view=diff&rev=441165&r1=441164&r2=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java Thu Sep 7 11:13:39 2006
@@ -38,6 +38,7 @@
import org.apache.axis2.jaxws.message.SOAP12Tests;
import org.apache.axis2.jaxws.message.XMLStreamReaderSplitterTests;
import org.apache.axis2.jaxws.provider.*;
+import org.apache.axis2.jaxws.sample.AddNumbersTests;
import org.apache.axis2.jaxws.sample.AddressBookTests;
import org.apache.axis2.proxy.ProxyNonWrappedTests;
import org.apache.axis2.proxy.ProxyTests;
@@ -78,6 +79,7 @@
suite.addTestSuite(ExceptionFactoryTests.class);
suite.addTestSuite(AddressBookTests.class);
+ suite.addTestSuite(AddNumbersTests.class);
// Start (and stop) the server only once for all the tests
TestSetup testSetup = new TestSetup(suite) {
Added: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/AddNumbersTests.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/AddNumbersTests.java?view=auto&rev=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/AddNumbersTests.java (added)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/AddNumbersTests.java Thu Sep 7 11:13:39 2006
@@ -0,0 +1,32 @@
+/**
+ *
+ */
+package org.apache.axis2.jaxws.sample;
+
+import javax.xml.ws.BindingProvider;
+
+import junit.framework.TestCase;
+
+import org.apache.axis2.jaxws.sample.addnumbers.AddNumbersPortType;
+import org.apache.axis2.jaxws.sample.addnumbers.AddNumbersService;
+
+
+public class AddNumbersTests extends TestCase {
+ String axisEndpoint = "http://localhost:8080/axis2/services/AddNumbersService";
+ public void testAddNumbers(){
+ try{
+ System.out.println("----------------------------------");
+ System.out.println("test: " + getName());
+ AddNumbersService service = new AddNumbersService();
+ AddNumbersPortType proxy = service.getAddNumbersPort();
+ BindingProvider p = (BindingProvider)proxy;
+ p.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,axisEndpoint);
+ int total = proxy.addNumbers(10,10);
+
+ System.out.println("Total =" +total);
+ System.out.println("----------------------------------");
+ }catch(Exception e){
+ e.printStackTrace();
+ }
+ }
+}
Added: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersFault_Exception.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersFault_Exception.java?view=auto&rev=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersFault_Exception.java (added)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersFault_Exception.java Thu Sep 7 11:13:39 2006
@@ -0,0 +1,56 @@
+
+package org.apache.axis2.jaxws.sample.addnumbers;
+
+import javax.xml.ws.WebFault;
+
+import org.test.addnumbers.AddNumbersFault;
+
+
+/**
+ * This class was generated by the JAXWS SI.
+ * JAX-WS RI 2.0_01-b15-fcs
+ * Generated source version: 2.0
+ *
+ */
+@WebFault(faultBean="", name = "AddNumbersFault", targetNamespace = "http://duke/org")
+public class AddNumbersFault_Exception
+ extends Exception
+{
+
+ /**
+ * Java type that goes as soapenv:Fault detail element.
+ *
+ */
+ private AddNumbersFault faultInfo;
+
+ /**
+ *
+ * @param faultInfo
+ * @param message
+ */
+ public AddNumbersFault_Exception(String message, AddNumbersFault faultInfo) {
+ super(message);
+ this.faultInfo = faultInfo;
+ }
+
+ /**
+ *
+ * @param faultInfo
+ * @param message
+ * @param cause
+ */
+ public AddNumbersFault_Exception(String message, AddNumbersFault faultInfo, Throwable cause) {
+ super(message, cause);
+ this.faultInfo = faultInfo;
+ }
+
+ /**
+ *
+ * @return
+ * returns fault bean: duke.org.AddNumbersFault
+ */
+ public AddNumbersFault getFaultInfo() {
+ return faultInfo;
+ }
+
+}
Added: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortType.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortType.java?view=auto&rev=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortType.java (added)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortType.java Thu Sep 7 11:13:39 2006
@@ -0,0 +1,56 @@
+
+package org.apache.axis2.jaxws.sample.addnumbers;
+
+import javax.jws.Oneway;
+import javax.jws.WebMethod;
+import javax.jws.WebParam;
+import javax.jws.WebResult;
+import javax.jws.WebService;
+import javax.xml.ws.RequestWrapper;
+import javax.xml.ws.ResponseWrapper;
+
+
+
+
+/**
+ * This class was generated by the JAXWS SI.
+ * JAX-WS RI 2.0_01-b15-fcs
+ * Generated source version: 2.0
+ *
+ */
+@WebService(name = "AddNumbersPortType", targetNamespace = "http://org/test/addnumbers")
+public interface AddNumbersPortType {
+
+
+ /**
+ *
+ * @param arg1
+ * @param arg0
+ * @return
+ * returns int
+ * @throws AddNumbersFault_Exception
+ */
+ @WebMethod
+ @WebResult(targetNamespace = "http://org/test/addnumbers")
+ @RequestWrapper(localName = "addNumbers", targetNamespace = "http://org/test/addnumbers", className = "org.test.addnumbers.AddNumbers")
+ @ResponseWrapper(localName = "addNumbersResponse", targetNamespace = "http://org/test/addnumbers", className = "org.test.addnumbers.AddNumbersResponse")
+ public int addNumbers(
+ @WebParam(name = "arg0", targetNamespace = "http://org/test/addnumbers")
+ int arg0,
+ @WebParam(name = "arg1", targetNamespace = "http://org/test/addnumbers")
+ int arg1)
+ throws AddNumbersFault_Exception
+ ;
+
+ /**
+ *
+ * @param arg0
+ */
+ @WebMethod
+ @Oneway
+ @RequestWrapper(localName = "oneWayInt", targetNamespace = "http://org/test/addnumbers", className = "org.test.addnumbers.OneWayInt")
+ public void oneWayInt(
+ @WebParam(name = "arg0", targetNamespace = "http://org/test/addnumbers")
+ int arg0);
+
+}
Added: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortTypeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortTypeImpl.java?view=auto&rev=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortTypeImpl.java (added)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersPortTypeImpl.java Thu Sep 7 11:13:39 2006
@@ -0,0 +1,29 @@
+/**
+ *
+ */
+package org.apache.axis2.jaxws.sample.addnumbers;
+
+import javax.jws.WebService;
+
+
+@WebService(endpointInterface="org.apache.axis2.jaxws.sample.addnumbers.AddNumbersPortType")
+public class AddNumbersPortTypeImpl implements AddNumbersPortType {
+
+ /* (non-Javadoc)
+ * @see org.apache.axis2.jaxws.sample.addnumbers.AddNumbersPortType#addNumbers(int, int)
+ */
+ public int addNumbers(int arg0, int arg1) throws AddNumbersFault_Exception {
+ // TODO Auto-generated method stub
+ return arg0+arg1;
+
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.axis2.jaxws.sample.addnumbers.AddNumbersPortType#oneWayInt(int)
+ */
+ public void oneWayInt(int arg0) {
+ // TODO Auto-generated method stub
+
+ }
+
+}
Added: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersService.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersService.java?view=auto&rev=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersService.java (added)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/AddNumbersService.java Thu Sep 7 11:13:39 2006
@@ -0,0 +1,61 @@
+
+package org.apache.axis2.jaxws.sample.addnumbers;
+
+import java.io.File;
+import java.net.MalformedURLException;
+import java.net.URL;
+import javax.xml.namespace.QName;
+import javax.xml.ws.Service;
+import javax.xml.ws.WebEndpoint;
+import javax.xml.ws.WebServiceClient;
+
+
+/**
+ * This class was generated by the JAXWS SI.
+ * JAX-WS RI 2.0_01-b15-fcs
+ * Generated source version: 2.0
+ *
+ */
+@WebServiceClient(name = "AddNumbersService", targetNamespace = "http://duke/org", wsdlLocation = "AddNumbers1.wsdl")
+public class AddNumbersService
+ extends Service
+{
+
+ private final static URL ADDNUMBERSSERVICE_WSDL_LOCATION;
+ private static String wsdlLocation="/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/AddNumbers.wsdl";
+ static {
+ URL url = null;
+ try {
+ try{
+ String baseDir = new File(".").getCanonicalPath();
+ wsdlLocation = new File(baseDir + wsdlLocation).getAbsolutePath();
+ }catch(Exception e){
+ e.printStackTrace();
+ }
+ File file = new File(wsdlLocation);
+ url = file.toURL();
+ } catch (MalformedURLException e) {
+ e.printStackTrace();
+ }
+ ADDNUMBERSSERVICE_WSDL_LOCATION = url;
+ }
+
+ public AddNumbersService(URL wsdlLocation, QName serviceName) {
+ super(wsdlLocation, serviceName);
+ }
+
+ public AddNumbersService() {
+ super(ADDNUMBERSSERVICE_WSDL_LOCATION, new QName("http://duke/org", "AddNumbersService"));
+ }
+
+ /**
+ *
+ * @return
+ * returns AddNumbersPortType
+ */
+ @WebEndpoint(name = "AddNumbersPort")
+ public AddNumbersPortType getAddNumbersPort() {
+ return (AddNumbersPortType)super.getPort(new QName("http://duke/org", "AddNumbersPort"), AddNumbersPortType.class);
+ }
+
+}
Added: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/AddNumbers.wsdl
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/AddNumbers.wsdl?view=auto&rev=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/AddNumbers.wsdl (added)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/AddNumbers.wsdl Thu Sep 7 11:13:39 2006
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+
+<definitions name="AddNumbers" targetNamespace="http://duke/org"
+ xmlns:tns="http://duke/org" xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
+
+
+ <types>
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" targetNamespace="http://duke/org">
+ <element name="addNumbersResponse">
+ <complexType>
+ <sequence>
+ <element name="return" type="xsd:int" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="addNumbers">
+ <complexType>
+ <sequence>
+ <element name="arg0" type="xsd:int" />
+ <element name="arg1" type="xsd:int" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="AddNumbersFault">
+ <complexType>
+ <sequence>
+ <element name="faultInfo" type="xsd:string" />
+ <element name="message" type="xsd:string" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="oneWayInt">
+ <complexType>
+ <sequence>
+ <element name="arg0" type="xsd:int" />
+ </sequence>
+ </complexType>
+ </element>
+
+ </xsd:schema>
+ </types>
+
+ <message name="addNumbers">
+ <part name="parameters" element="tns:addNumbers" />
+ </message>
+ <message name="addNumbersResponse">
+ <part name="result" element="tns:addNumbersResponse" />
+ </message>
+ <message name="addNumbersFault">
+ <part name="AddNumbersFault" element="tns:AddNumbersFault" />
+ </message>
+ <message name="oneWayInt">
+ <part name="parameters" element="tns:oneWayInt" />
+ </message>
+
+ <portType name="AddNumbersPortType">
+ <operation name="addNumbers">
+ <input message="tns:addNumbers" name="add" />
+ <output message="tns:addNumbersResponse" name="addResponse" />
+ <fault name="addNumbersFault" message="tns:addNumbersFault" />
+ </operation>
+ <operation name="oneWayInt">
+ <input message="tns:oneWayInt" />
+ </operation>
+ </portType>
+ <binding name="AddNumbersBinding" type="tns:AddNumbersPortType">
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
+ style="document" />
+ <operation name="addNumbers">
+ <soap:operation soapAction="" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ <fault name="addNumbersFault">
+ <soap:fault name="addNumbersFault" use="literal" />
+ </fault>
+ </operation>
+ <operation name="oneWayInt">
+ <soap:operation soapAction="" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ </operation>
+ </binding>
+ <service name="AddNumbersService">
+ <port name="AddNumbersPort" binding="tns:AddNumbersBinding">
+ <soap:address
+ location="http://localhost:9080/AddNumber/AddNumbersImplService" />
+ </port>
+ </service>
+</definitions>
Added: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/services.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/services.xml?view=auto&rev=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/services.xml (added)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/sample/addnumbers/META-INF/services.xml Thu Sep 7 11:13:39 2006
@@ -0,0 +1,14 @@
+<serviceGroup>
+ <service name="AddNumbersService">
+ <messageReceivers>
+ <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.jaxws.server.JAXWSMessageReceiver"/>
+ </messageReceivers>
+ <parameter locked="false" name="ServiceClass">org.apache.axis2.jaxws.sample.addnumbers.AddNumbersPortTypeImpl</parameter>
+ <operation name="addNumbers" mep="http://www.w3.org/2004/08/wsdl/in-out">
+ <actionMapping/>
+ </operation>
+ <operation name="oneWayInt" mep="http://www.w3.org/2004/08/wsdl/in-only">
+ <actionMapping/>
+ </operation>
+ </service>
+</serviceGroup>
Modified: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/proxy/ProxyTests.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/proxy/ProxyTests.java?view=diff&rev=441165&r1=441164&r2=441165
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/proxy/ProxyTests.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/proxy/ProxyTests.java Thu Sep 7 11:13:39 2006
@@ -17,26 +17,18 @@
package org.apache.axis2.proxy;
import java.io.File;
-import java.io.StringWriter;
import java.net.URL;
import java.util.concurrent.Future;
-import javax.xml.bind.JAXBContext;
-import javax.xml.bind.Marshaller;
-import javax.xml.bind.Unmarshaller;
import javax.xml.namespace.QName;
-import javax.xml.stream.XMLOutputFactory;
-import javax.xml.stream.XMLStreamWriter;
import javax.xml.ws.AsyncHandler;
import javax.xml.ws.BindingProvider;
-import javax.xml.ws.Response;
import javax.xml.ws.Service;
import junit.framework.TestCase;
import org.apache.axis2.jaxws.proxy.doclitwrapped.sei.DocLitWrappedProxy;
import org.apache.axis2.jaxws.proxy.doclitwrapped.sei.ProxyDocLitWrappedService;
-import org.test.proxy.doclitwrapped.ReturnType;
public class ProxyTests extends TestCase {
@@ -80,7 +72,33 @@
e.printStackTrace();
}
}
-
+
+ public void testInvokeWithNullParam(){
+ try{
+ if(!runningOnAxis){
+ return;
+ }
+ System.out.println("---------------------------------------");
+ System.out.println("Test Name: "+getName());
+ File wsdl= new File(wsdlLocation);
+ URL wsdlUrl = wsdl.toURL();
+ Service service = Service.create(null, serviceName);
+ Object proxy =service.getPort(portName, DocLitWrappedProxy.class);
+ System.out.println(">>Invoking Binding Provider property");
+ BindingProvider p = (BindingProvider)proxy;
+ p.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,axisEndpoint);
+
+ DocLitWrappedProxy dwp = (DocLitWrappedProxy)proxy;
+ System.out.println(">> Invoking Proxy Synchronously");
+ String request = null;
+ String response = dwp.invoke(request);
+ System.out.println("Proxy Response =" + response);
+ System.out.println("---------------------------------------");
+ }catch(Exception e){
+ e.printStackTrace();
+ fail("Exception received" + e);
+ }
+ }
public void testInvoke(){
try{
if(!runningOnAxis){
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org