[jboss-svn-commits] JBossWS SVN: r638 - in trunk: . src/main/java/org/jboss/ws/tools src/main/java/org/jboss/ws/tools/config src/main/java/org/jboss/ws/tools/helpers src/main/java/org/jboss/ws/tools/interfaces src/main/java/org/jboss/ws/tools/mapping src/main/resources/samples/jsr181pojo src/main/resources/schema src/test src/test/ant src/test/resources/samples/jsr181pojo src/test/resources/samples/jsr181pojo/docwrapped src/test/resources/samples/jsr181pojo/docwrapped/META-INF src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Jul 25 17:23:33 EDT 2006
Author: jason.greene at jboss.com
Date: 2006-07-25 17:23:26 -0400 (Tue, 25 Jul 2006)
New Revision: 638
Added:
trunk/src/test/resources/samples/jsr181pojo/docwrapped/
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl
trunk/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/
trunk/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml
trunk/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml
Removed:
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/
trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl
trunk/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/
trunk/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml
trunk/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml
Modified:
trunk/build-samples.xml
trunk/src/main/java/org/jboss/ws/tools/Configuration.java
trunk/src/main/java/org/jboss/ws/tools/WSDLToJava.java
trunk/src/main/java/org/jboss/ws/tools/config/ToolsSchemaConfigReader.java
trunk/src/main/java/org/jboss/ws/tools/helpers/MappingFileGeneratorHelper.java
trunk/src/main/java/org/jboss/ws/tools/helpers/ToolsHelper.java
trunk/src/main/java/org/jboss/ws/tools/interfaces/WSDLToJavaIntf.java
trunk/src/main/java/org/jboss/ws/tools/mapping/MappingFileGenerator.java
trunk/src/main/resources/samples/jsr181pojo/build.xml
trunk/src/main/resources/schema/jbossws-tool_1_0.xsd
trunk/src/test/ant/build-jars.xml
trunk/src/test/build.xml
Log:
MFB JBWS-750
Modified: trunk/build-samples.xml
===================================================================
--- trunk/build-samples.xml 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/build-samples.xml 2006-07-25 21:23:26 UTC (rev 638)
@@ -145,7 +145,7 @@
<copy todir="${build.src.samples.dir}/jsr109pojo/java">
<fileset dir="${test.java.dir}">
- <include name="org/jboss/test/ws/samples/jsr109pojo/**"/>
+ <include name="org/jboss/test/ws/samples/jsr109pojo/**/*"/>
</fileset>
</copy>
<copy todir="${build.src.samples.dir}/jsr109pojo/resources">
@@ -301,4 +301,4 @@
</target>
-</project>
\ No newline at end of file
+</project>
Modified: trunk/src/main/java/org/jboss/ws/tools/Configuration.java
===================================================================
--- trunk/src/main/java/org/jboss/ws/tools/Configuration.java 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/main/java/org/jboss/ws/tools/Configuration.java 2006-07-25 21:23:26 UTC (rev 638)
@@ -159,8 +159,7 @@
public class WSDLToJavaConfig
{
public String wsdlLocation = null;
- public boolean disableUnwrap = false;
- public boolean useJavaAnnotations = false;
+ public boolean unwrap = false;
public boolean mappingFileNeeded = false;
public String mappingFileName = null;
}
Modified: trunk/src/main/java/org/jboss/ws/tools/WSDLToJava.java
===================================================================
--- trunk/src/main/java/org/jboss/ws/tools/WSDLToJava.java 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/main/java/org/jboss/ws/tools/WSDLToJava.java 2006-07-25 21:23:26 UTC (rev 638)
@@ -35,7 +35,12 @@
import org.apache.xerces.xs.XSComplexTypeDefinition;
import org.apache.xerces.xs.XSElementDeclaration;
+import org.apache.xerces.xs.XSModelGroup;
+import org.apache.xerces.xs.XSObject;
+import org.apache.xerces.xs.XSObjectList;
+import org.apache.xerces.xs.XSParticle;
import org.apache.xerces.xs.XSSimpleTypeDefinition;
+import org.apache.xerces.xs.XSTerm;
import org.apache.xerces.xs.XSTypeDefinition;
import org.jboss.ws.Constants;
import org.jboss.ws.WSException;
@@ -100,6 +105,8 @@
private String style;
+ private boolean unwrap = false;
+
public WSDLToJava()
{
}
@@ -112,7 +119,7 @@
checkTypeMapping();
WSDLDefinitionsFactory wsdlFactory = WSDLDefinitionsFactory.newInstance();
wsdl = wsdlFactory.parse(wsdlfileurl);
- style = utils.getWSDLStyle(wsdl);
+
return wsdl;
}
@@ -162,7 +169,9 @@
checkTypeMapping();
this.directoryToGenerate = dir.getAbsolutePath();
this.wsdl = wsdl;
- //wsdlStyle = utils.getWSDLStyle(wsdl);
+ style = utils.getWSDLStyle(wsdl);
+
+
//TODO: Handle annotations flag, as per JAX-WS 2.0 Spec.
//Given the WSDL Object Tree, generate the SEI
//Also take in the location where the SEI should be written
@@ -244,6 +253,108 @@
// PRIVATE METHODS
//***************************************************************************
+ private boolean shouldUnwrap()
+ {
+ return unwrap && Constants.DOCUMENT_LITERAL.equals(style);
+ }
+
+ private void unwrapRequest(StringBuilder buf, XSTypeDefinition xt) throws IOException
+ {
+ if (xt instanceof XSComplexTypeDefinition == false)
+ throw new WSException("Tried to unwrap a non-complex type.");
+
+ XSComplexTypeDefinition wrapper = (XSComplexTypeDefinition)xt;
+ XSParticle particle = wrapper.getParticle();
+ XSTerm term = particle.getTerm();
+ if (term instanceof XSModelGroup == false)
+ throw new WSException("Expected model group, could not unwrap");
+ unwrapRequestParticles(buf, (XSModelGroup)term);
+
+ // We need a wrapper class generated
+ generateJavaSource(wrapper, WSDLUtils.getSchemaModel(wsdl.getWsdlTypes()), wrapper.getName());
+ }
+
+ private int unwrapRequestParticles(StringBuilder buf, XSModelGroup group) throws IOException
+ {
+ if (group.getCompositor() != XSModelGroup.COMPOSITOR_SEQUENCE)
+ throw new WSException("Only a sequence type can be unwrapped.");
+
+ int elementCount = 0;
+ XSObjectList particles = group.getParticles();
+ for (int i = 0; i < particles.getLength(); i++)
+ {
+ XSParticle particle = (XSParticle) particles.item(i);
+ XSTerm term = particle.getTerm();
+ if (term instanceof XSModelGroup)
+ {
+ elementCount += unwrapRequestParticles(buf, (XSModelGroup)term);
+ }
+ else if (term instanceof XSElementDeclaration)
+ {
+ if (elementCount++ > 0)
+ buf.append(", ");
+ XSElementDeclaration element = (XSElementDeclaration)term;
+ QName xmlName = new QName(element.getNamespace(), element.getName());
+ QName xmlType = new QName(element.getTypeDefinition().getNamespace(), element.getTypeDefinition().getName());
+ JBossXSModel xsmodel = WSDLUtils.getSchemaModel(wsdl.getWsdlTypes());
+ boolean array = particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1;
+ generateParameter(buf, null, xmlName, xmlType, xsmodel, element.getTypeDefinition(), array, !element.getNillable());
+ buf.append(" ").append(getMethodParam(xmlName));
+ }
+ }
+
+ return elementCount;
+ }
+
+ private String unwrapResponse(XSTypeDefinition xt) throws IOException
+ {
+ if (xt instanceof XSComplexTypeDefinition == false)
+ throw new WSException("Tried to unwrap a non-complex type.");
+
+ XSComplexTypeDefinition wrapper = (XSComplexTypeDefinition)xt;
+ XSParticle particle = wrapper.getParticle();
+ XSTerm term = particle.getTerm();
+ if (term instanceof XSModelGroup == false)
+ throw new WSException("Expected model group, could not unwrap");
+ String returnType = unwrapResponseParticles((XSModelGroup)term);
+ // We need a wrapper class generated
+ generateJavaSource(wrapper, WSDLUtils.getSchemaModel(wsdl.getWsdlTypes()), wrapper.getName());
+ return returnType;
+ }
+
+ private String unwrapResponseParticles(XSModelGroup group) throws IOException
+ {
+ if (group.getCompositor() != XSModelGroup.COMPOSITOR_SEQUENCE)
+ throw new WSException("Only a sequence type can be unwrapped.");
+
+ XSObjectList particles = group.getParticles();
+ String returnType = null;
+ for (int i = 0; i < particles.getLength(); i++)
+ {
+ XSParticle particle = (XSParticle) particles.item(i);
+ XSTerm term = particle.getTerm();
+ if (term instanceof XSModelGroup)
+ {
+ returnType = unwrapResponseParticles((XSModelGroup)term);
+ if (returnType != null)
+ return returnType;
+ }
+ else if (term instanceof XSElementDeclaration)
+ {
+ XSElementDeclaration element = (XSElementDeclaration)term;
+ QName xmlName = new QName(element.getNamespace(), element.getName());
+ QName xmlType = new QName(element.getTypeDefinition().getNamespace(), element.getTypeDefinition().getName());
+ JBossXSModel xsmodel = WSDLUtils.getSchemaModel(wsdl.getWsdlTypes());
+ boolean array = particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1;
+ StringBuilder buf = new StringBuilder();
+ generateParameter(buf, null, xmlName, xmlType, xsmodel, element.getTypeDefinition(), array, !element.getNillable());
+ return buf.toString();
+ }
+ }
+
+ return null;
+ }
+
private void appendMethods(WSDLInterface intf, StringBuilder buf ) throws IOException
{
buf.append(newline);
@@ -273,52 +384,30 @@
JBossXSModel xsmodel = WSDLUtils.getSchemaModel(wsdl.getWsdlTypes());
XSTypeDefinition xt = xsmodel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI());
- boolean primitive = true;
- WrappedArray wrappedArray = new WrappedArray(xt);
- String arraySuffix = "";
- if (wrappedArray.unwrap())
+ if (shouldUnwrap())
{
- xt = wrappedArray.xt;
- xmlType = wrappedArray.xmlType;
- primitive = !wrappedArray.nillable;
- arraySuffix = wrappedArray.suffix;
+ unwrapRequest(buf, xt);
+ break;
}
- if (xt instanceof XSSimpleTypeDefinition)
- xmlType = SchemaUtils.handleSimpleType((XSSimpleTypeDefinition) xt);
+ generateParameter(buf, in, xmlName, xmlType, xsmodel, xt, false, true);
+ buf.append(" ").append(getMethodParam(xmlName));
+ }
- Class cl = getJavaType(xmlType, primitive);
- //Class cl = typeMapping.getJavaType(inqname,true);
- cl = this.checkNeedHolder(in,cl);
- if(cl != null)
- {
- buf.append( JavaUtils.getSourceName(cl) + arraySuffix + " " + getMethodParam(xmlName));
- }
- else
- {
- //buf.append(inqname.getLocalPart() + " " + inqname.getLocalPart().toLowerCase());
- String className = xmlType.getLocalPart();
- if (className.charAt(0) == '>')
- className = className.substring(1);
- className = utils.firstLetterUpperCase(className);
- buf.append(seiPkgName + "." + className + arraySuffix + " " + getMethodParam(xmlName));
-
- if(xt instanceof XSComplexTypeDefinition)
- generateJavaSource((XSComplexTypeDefinition)xt, xsmodel, xmlName.getLocalPart());
- }
- }
//Check for out holder only
int lenOuts = outs != null ? outs.length : 0;
- if(lenOuts > 1)
- for(int m=1; m < lenOuts; m++)
+ if ((!shouldUnwrap()) && lenOuts > 1)
+ {
+ // This needs to be rewritten, custom types, and custom holders should be supported
+ for (int m = 1; m < lenOuts; m++)
{
- if(this.isInOutHolder(outs[m]))
+ if (this.isInOutHolder(outs[m]))
continue;
buf.append(",");
QName xmlName = outs[m].getElement();
QName xmlType = outs[m].getXMLType();
JBossXSModel xsmodel = WSDLUtils.getSchemaModel(wsdl.getWsdlTypes());
- XSTypeDefinition xt = xsmodel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI());
+ XSTypeDefinition xt = xsmodel.getTypeDefinition(xmlType.getLocalPart(), xmlType.getNamespaceURI());
boolean primitive = true;
WrappedArray wrappedArray = new WrappedArray(xt);
@@ -332,11 +421,12 @@
}
if (xt instanceof XSSimpleTypeDefinition)
- xmlType = SchemaUtils.handleSimpleType((XSSimpleTypeDefinition) xt);
+ xmlType = SchemaUtils.handleSimpleType((XSSimpleTypeDefinition)xt);
Class cls = this.getJavaType(xmlType, primitive);
buf.append(utils.getHolder(cls).getName()).append(" ").append(getMethodParam(xmlName));
}
+ }
buf.append(") throws ");
//Generate the Exception Types
@@ -346,7 +436,6 @@
WSDLInterfaceOperationOutfault fault = outfaults[k];
QName faultqname = fault.getRef();
-
//Get the main fault from the wsdlInterface
WSDLInterfaceFault intfFault = fault.getWsdlInterfaceOperation().getWsdlInterface().getFault(new NCName(faultqname.getLocalPart()));
JBossXSModel xsmodel = WSDLUtils.getSchemaModel(wsdl.getWsdlTypes());
@@ -373,6 +462,43 @@
}
}
+ private void generateParameter(StringBuilder buf, WSDLInterfaceOperationInput in, QName xmlName, QName xmlType, JBossXSModel xsmodel, XSTypeDefinition xt, boolean array, boolean primitive) throws IOException
+ {
+ WrappedArray wrappedArray = new WrappedArray(xt);
+ String arraySuffix = (array) ? "[]" : "";
+ if (wrappedArray.unwrap())
+ {
+ xt = wrappedArray.xt;
+ xmlType = wrappedArray.xmlType;
+ primitive = !wrappedArray.nillable;
+ arraySuffix = wrappedArray.suffix;
+ }
+
+ if (xt instanceof XSSimpleTypeDefinition)
+ xmlType = SchemaUtils.handleSimpleType((XSSimpleTypeDefinition) xt);
+
+ Class cl = getJavaType(xmlType, primitive);
+ //Class cl = typeMapping.getJavaType(inqname,true);
+ if (in != null)
+ cl = this.checkNeedHolder(in,cl);
+ if(cl != null)
+ {
+ buf.append(JavaUtils.getSourceName(cl) + arraySuffix);
+ }
+ else
+ {
+ //buf.append(inqname.getLocalPart() + " " + inqname.getLocalPart().toLowerCase());
+ String className = xmlType.getLocalPart();
+ if (className.charAt(0) == '>')
+ className = className.substring(1);
+ className = utils.firstLetterUpperCase(className);
+ buf.append(seiPkgName + "." + className + arraySuffix);
+
+ if(xt instanceof XSComplexTypeDefinition)
+ generateJavaSource((XSComplexTypeDefinition)xt, xsmodel, xmlName.getLocalPart());
+ }
+ }
+
private void createSEIFile(WSDLInterface intf, File loc) throws IOException
{
String fname = utils.chopPortType(intf.getName().toString());
@@ -426,6 +552,9 @@
JBossXSModel xsmodel = WSDLUtils.getSchemaModel(wsdl.getWsdlTypes());
XSTypeDefinition xt = xsmodel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI());
+ if (shouldUnwrap())
+ return unwrapResponse(xt);
+
boolean primitive = true;
WrappedArray wrappedArray = new WrappedArray(xt);
String arraySuffix = "";
@@ -572,4 +701,14 @@
xtj.setTypeMapping(this.typeMapping);
xtj.createJavaFile((XSComplexTypeDefinition)xt, containingElement, getLocationForJavaGeneration(), seiPkgName, xsmodel, exception);
}
-}
\ No newline at end of file
+
+ public boolean isUnwrap()
+ {
+ return unwrap;
+ }
+
+ public void setUnwrap(boolean unwrap)
+ {
+ this.unwrap = unwrap;
+ }
+}
Modified: trunk/src/main/java/org/jboss/ws/tools/config/ToolsSchemaConfigReader.java
===================================================================
--- trunk/src/main/java/org/jboss/ws/tools/config/ToolsSchemaConfigReader.java 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/main/java/org/jboss/ws/tools/config/ToolsSchemaConfigReader.java 2006-07-25 21:23:26 UTC (rev 638)
@@ -84,10 +84,12 @@
private static final String ENDPOINT_ATTRIBUTE = "endpoint";
private static final String NAME_ATTRIBUTE = "name";
private static final String FILE_ATTRIBUTE = "file";
+ private static final String UNWRAP_ATTRIBUTE = "unwrap";
// provide logging
private static final Logger log = Logger.getLogger(ToolsSchemaConfigReader.class);
+
public ToolsSchemaConfigReader()
{
}
@@ -174,6 +176,10 @@
{
WSDLToJavaConfig wsdl2jc = config.getWSDLToJavaConfig(true);
wsdl2jc.wsdlLocation = attrs.getValue(FILE_ATTRIBUTE);
+ String unwrap = attrs.getValue(UNWRAP_ATTRIBUTE);
+ if (unwrap != null)
+ wsdl2jc.unwrap = "true".equals(unwrap) || "1".equals(unwrap);
+
return wsdl2jc;
}
else if (GLOBAL_TAG.equals(localName))
Modified: trunk/src/main/java/org/jboss/ws/tools/helpers/MappingFileGeneratorHelper.java
===================================================================
--- trunk/src/main/java/org/jboss/ws/tools/helpers/MappingFileGeneratorHelper.java 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/main/java/org/jboss/ws/tools/helpers/MappingFileGeneratorHelper.java 2006-07-25 21:23:26 UTC (rev 638)
@@ -22,6 +22,7 @@
package org.jboss.ws.tools.helpers;
import java.beans.Introspector;
+import java.io.IOException;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.ArrayList;
@@ -103,6 +104,7 @@
private WSDLUtils utils = WSDLUtils.getInstance();
+ private boolean unwrap = false;
/**
* A list of types that need java-xml type generation
@@ -110,7 +112,7 @@
private List<XSTypeDefinition> queueTypes = new ArrayList<XSTypeDefinition>();
public MappingFileGeneratorHelper(WSDLDefinitions wsdl, String sname,
- String pname, Class seiClass, String tns,LiteralTypeMapping ltm )
+ String pname, Class seiClass, String tns,LiteralTypeMapping ltm, boolean unwrap)
{
this.wsdlDefinitions = wsdl;
this.serviceName = sname;
@@ -120,6 +122,7 @@
this.typeMapping = ltm;
this.wsdlStyle = utils.getWSDLStyle(wsdl);
+ this.unwrap = unwrap;
checkEssentials();
}
@@ -194,9 +197,6 @@
javaPortName += "_PortType";
ServiceEndpointInterfaceMapping seim = new ServiceEndpointInterfaceMapping(jwm);
- /* if(isDocStyle() && serviceEndpointInterface != null )
- seim.setServiceEndpointInterface(packageName + "." + portName + "Wrapped");
- else*/
seim.setServiceEndpointInterface(packageName + "." + javaPortName);
seim.setWsdlPortType(new QName(targetNS,portName,"portTypeNS"));
seim.setWsdlBinding(new QName(targetNS,bindName,"bindingNS"));
@@ -224,6 +224,7 @@
ServiceEndpointMethodMapping semm = new ServiceEndpointMethodMapping(seim);
semm.setJavaMethodName(ToolsUtils.firstLetterLowerCase(opname));
semm.setWsdlOperation(opname);
+ semm.setWrappedElement(shouldUnwrap());
constructMethodParamPartsMapping(semm,wiop );
@@ -245,44 +246,32 @@
QName xmlName = wiout.getElement();
QName xmlType = wiout.getXMLType();
+ WSDLProperty wprop = wiout.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME);
+ QName messageName = new QName(targetNS, wprop.getValue(), WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_WSDL_MESSAGE_NS);
+
+ if (shouldUnwrap())
+ {
+ JBossXSModel schemaModel = WSDLUtils.getSchemaModel(wsdlDefinitions.getWsdlTypes());
+ XSTypeDefinition xt = schemaModel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI());
+ unwrapResponse(semm, messageName, xt);
+
+ continue;
+ }
+
//Check it is a holder. If it is, return
if( wiop.getInputByPartName(xmlName.getLocalPart()) != null)
continue;
- String javaType = "";
- if(isDocStyle() && serviceEndpointInterface != null)
- javaType = serviceEndpointInterface.getName() + "_" + opname + "_ResponseStruct";
- else
- {
- if(isDocStyle() )
- xmlType = wiout.getXMLType();
- javaType = getJavaTypeAsStringForReturnType(xmlName,xmlType,wiout);
- }
+ String javaType = getJavaTypeAsString(xmlName,xmlType, false, true);
if(isDocStyle() == false && "void".equals(javaType))
continue;
WsdlReturnValueMapping wrvm = new WsdlReturnValueMapping(semm);
wrvm.setMethodReturnValue(javaType);
- if(isDocStyle() && serviceEndpointInterface == null)
- {
- WSDLProperty wprop = wiout.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME);
- wrvm.setWsdlMessage(new QName(targetNS,wprop.getValue(),
- WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_WSDL_MESSAGE_NS));
- }
- else
- wrvm.setWsdlMessage(new QName(targetNS,portName + "_" + opname + "Response",
- WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_WSDL_MESSAGE_NS));
- if(isDocStyle() && serviceEndpointInterface == null )
- {
- WSDLProperty wprop = wiout.getProperty(Constants.WSDL_PROPERTY_PART_NAME);
- if(wprop != null)
- wrvm.setWsdlMessagePartName(wprop.getValue());
- }
- else
- {
- wrvm.setWsdlMessagePartName(Constants.DEFAULT_RPC_RETURN_NAME);
- }
+ wrvm.setWsdlMessage(messageName);
+ wprop = wiout.getProperty(Constants.WSDL_PROPERTY_PART_NAME);
+ wrvm.setWsdlMessagePartName(wprop.getValue());
semm.setWsdlReturnValueMapping(wrvm);
}
}
@@ -302,27 +291,26 @@
QName xmlName = win.getElement();
QName xmlType = win.getXMLType();
String wsdlMessageName = "";
- if(isDocStyle() && serviceEndpointInterface == null)
- wsdlMessageName = win.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME).getValue();
- else
- wsdlMessageName = portName + "_" + opname;
- String partName = xmlName.getLocalPart();
- if(isDocStyle())
- {
- partName = "parameters";
- if(serviceEndpointInterface == null)
- partName = win.getProperty(Constants.WSDL_PROPERTY_PART_NAME).getValue();
- }
+ wsdlMessageName = win.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME).getValue();
+ String partName = win.getProperty(Constants.WSDL_PROPERTY_PART_NAME).getValue();
String paramMode = "";
- if(wiop.getOutputByPartName(xmlName.getLocalPart()) != null)
+ if(wiop.getOutputByPartName(partName) != null)
paramMode = WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_IN_OUT_HOLDER_PARAM_MODE;
else
paramMode = WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_IN_PARAM_MODE;
+ if (shouldUnwrap())
+ {
+ JBossXSModel schemaModel = WSDLUtils.getSchemaModel(wsdlDefinitions.getWsdlTypes());
+ XSTypeDefinition xt = schemaModel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI());
+ unwrapRequest(semm, wsdlMessageName, xt);
+ break;
+ }
+
MethodParamPartsMapping mpin = getMethodParamPartsMapping(semm,xmlName, xmlType,
- k, wsdlMessageName, paramMode, partName);
+ k, wsdlMessageName, paramMode, partName, false, true);
semm.addMethodParamPartsMapping(mpin);
}
//Take care of out holders
@@ -338,7 +326,7 @@
QName xmlType = out.getXMLType();
MethodParamPartsMapping mpm = getMethodParamPartsMapping(semm,xmlName, xmlType,
lenwiopin + m -1, out.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME).getValue(),
- WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_OUT_HOLDER_PARAM_MODE, xmlName.getLocalPart());
+ WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_OUT_HOLDER_PARAM_MODE, xmlName.getLocalPart(), false, true);
semm.addMethodParamPartsMapping(mpm);
}
}
@@ -387,7 +375,7 @@
addJavaXMLTypeMap(xt, xmlName.getLocalPart(), jwm, true);
ExceptionMapping exceptionMapping = new ExceptionMapping(jwm);
- exceptionMapping.setExceptionType(getJavaTypeAsString(null, xmlType));
+ exceptionMapping.setExceptionType(getJavaTypeAsString(null, xmlType, false, true));
exceptionMapping.setWsdlMessage(new QName(wsdlDefinitions.getTargetNamespace(), fault.getName().toString()));
jwm.addExceptionMappings(exceptionMapping);
}
@@ -395,7 +383,104 @@
}
}
- //PRIVATE METHODS
+ private void unwrapRequest(ServiceEndpointMethodMapping methodMapping, String messageName, XSTypeDefinition xt)
+ {
+ if (xt instanceof XSComplexTypeDefinition == false)
+ throw new WSException("Tried to unwrap a non-complex type.");
+
+ XSComplexTypeDefinition wrapper = (XSComplexTypeDefinition)xt;
+ XSParticle particle = wrapper.getParticle();
+ XSTerm term = particle.getTerm();
+ if (term instanceof XSModelGroup == false)
+ throw new WSException("Expected model group, could not unwrap");
+ unwrapRequestParticles(methodMapping, messageName, (XSModelGroup)term);
+ }
+
+ private int unwrapRequestParticles(ServiceEndpointMethodMapping methodMapping, String messageName, XSModelGroup group)
+ {
+ if (group.getCompositor() != XSModelGroup.COMPOSITOR_SEQUENCE)
+ throw new WSException("Only a sequence type can be unwrapped.");
+
+ int elementCount = 0;
+ XSObjectList particles = group.getParticles();
+ for (int i = 0; i < particles.getLength(); i++)
+ {
+ XSParticle particle = (XSParticle) particles.item(i);
+ XSTerm term = particle.getTerm();
+ if (term instanceof XSModelGroup)
+ {
+ elementCount += unwrapRequestParticles(methodMapping, messageName, (XSModelGroup)term);
+ }
+ else if (term instanceof XSElementDeclaration)
+ {
+ XSElementDeclaration element = (XSElementDeclaration)term;
+ QName xmlName = new QName(element.getNamespace(), element.getName());
+ QName xmlType = new QName(element.getTypeDefinition().getNamespace(), element.getTypeDefinition().getName());
+ boolean array = particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1;
+ MethodParamPartsMapping parts = getMethodParamPartsMapping(methodMapping, xmlName, xmlType, elementCount, messageName, "IN", xmlName.getLocalPart(), array,
+ !element.getNillable());
+ methodMapping.addMethodParamPartsMapping(parts);
+ elementCount++;
+ }
+ }
+
+ return elementCount;
+ }
+
+ private void unwrapResponse(ServiceEndpointMethodMapping methodMapping, QName messageName, XSTypeDefinition xt)
+ {
+ if (xt instanceof XSComplexTypeDefinition == false)
+ throw new WSException("Tried to unwrap a non-complex type.");
+
+ XSComplexTypeDefinition wrapper = (XSComplexTypeDefinition)xt;
+ XSParticle particle = wrapper.getParticle();
+ XSTerm term = particle.getTerm();
+ if (term instanceof XSModelGroup == false)
+ throw new WSException("Expected model group, could not unwrap");
+ unwrapResponseParticles(methodMapping, messageName, (XSModelGroup)term);
+ }
+
+ private boolean unwrapResponseParticles(ServiceEndpointMethodMapping methodMapping, QName messageName, XSModelGroup group)
+ {
+ if (group.getCompositor() != XSModelGroup.COMPOSITOR_SEQUENCE)
+ throw new WSException("Only a sequence type can be unwrapped.");
+
+ XSObjectList particles = group.getParticles();
+ String returnType = null;
+ for (int i = 0; i < particles.getLength(); i++)
+ {
+ XSParticle particle = (XSParticle) particles.item(i);
+ XSTerm term = particle.getTerm();
+ if (term instanceof XSModelGroup)
+ {
+ if (unwrapResponseParticles(methodMapping, messageName, (XSModelGroup)term))
+ return true;
+ }
+ else if (term instanceof XSElementDeclaration)
+ {
+ XSElementDeclaration element = (XSElementDeclaration)term;
+ QName xmlName = new QName(element.getNamespace(), element.getName());
+ QName xmlType = new QName(element.getTypeDefinition().getNamespace(), element.getTypeDefinition().getName());
+ boolean array = particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1;
+ StringBuilder buf = new StringBuilder();
+
+ String javaType = getJavaTypeAsString(xmlName, xmlType, array, !element.getNillable());
+
+ WsdlReturnValueMapping wrvm = new WsdlReturnValueMapping(methodMapping);
+ wrvm.setMethodReturnValue(javaType);
+ wrvm.setWsdlMessage(messageName);
+ wrvm.setWsdlMessagePartName(xmlName.getLocalPart());
+ methodMapping.setWsdlReturnValueMapping(wrvm);
+
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+
+
private void checkEssentials()
{
if(typeMapping == null)
@@ -452,13 +537,13 @@
// Anonymous
if (localName == null)
{
- javaType = getJavaTypeAsString(null, new QName(containingElement));
+ javaType = getJavaTypeAsString(null, new QName(containingElement), false, true);
localName = ">" + containingElement;
jxtm.setAnonymousTypeQName(new QName(xt.getNamespace(), localName, "typeNS"));
}
else
{
- javaType = getJavaTypeAsString(null, new QName(localName));
+ javaType = getJavaTypeAsString(null, new QName(localName), false, true);
jxtm.setRootTypeQName(new QName(xt.getNamespace(), xt.getName(), "typeNS"));
}
@@ -572,12 +657,11 @@
return marr;
}
- private String getJavaTypeAsString( QName xmlName, QName xmlType)
+ private String getJavaTypeAsString(QName xmlName, QName xmlType, boolean array, boolean primitive)
{
String jtype = null;
- String arraySuffix = "";
- boolean primitive = true;
+ String arraySuffix = (array) ? "[]" : "";
if (! isDocStyle())
{
JBossXSModel xsmodel = WSDLUtils.getSchemaModel(wsdlDefinitions.getWsdlTypes());
@@ -634,30 +718,6 @@
return jtype + arraySuffix;
}
- private String getJavaTypeAsStringForReturnType( QName xmlName, QName xmlType,
- WSDLInterfaceOperationOutput wiout)
- {
- /**
- * NOTE: There is no way, we can figure out whether the JavaType
- * should be a wrapper or a primitive for a given xmlType, when
- * dealing with return types. The only option is to peek inside the
- * SEI (if available)
- */
- //Check if we have the SEI
- if(serviceEndpointInterface != null)
- {
- String opname = wiout.getWsdlOperation().getName().toString();
- Method[] marr = getMethodsGivenOperationName(serviceEndpointInterface,opname);
- if(marr != null && marr.length == 1)//If we have just one method
- {
- Class retType = marr[0].getReturnType();
- return retType.isArray()? JavaUtils.getSourceName(retType): retType.getName();
- }
- }
- return getJavaTypeAsString(xmlName,xmlType);
- }
-
-
private boolean isDocStyle()
{
return Constants.DOCUMENT_LITERAL.equals(wsdlStyle);
@@ -729,6 +789,11 @@
return javaType;
}
+ private boolean shouldUnwrap()
+ {
+ return unwrap && Constants.DOCUMENT_LITERAL.equals(wsdlStyle);
+ }
+
private boolean isInOutHolder(WSDLInterfaceOperationOutput wout)
{
//Now check if the part exists in both input and output => Need Holder
@@ -741,20 +806,12 @@
private MethodParamPartsMapping getMethodParamPartsMapping(ServiceEndpointMethodMapping semm,
QName xmlName, QName xmlType,
- int paramPosition, String wsdlMessageName, String paramMode, String wsdlMessagePartName)
+ int paramPosition, String wsdlMessageName, String paramMode, String wsdlMessagePartName, boolean array, boolean primitive)
{
String targetNS = wsdlDefinitions.getTargetNamespace();
MethodParamPartsMapping mppm = new MethodParamPartsMapping(semm);
mppm.setParamPosition(paramPosition);
- String javaType = "";
- if(isDocStyle() && serviceEndpointInterface != null)
- {
- //javaType = this.serviceEndpointInterface.getName()+"_"+xmlType.getLocalPart()+"_RequestStruct";
- javaType = this.serviceEndpointInterface.getName()+"_" + xmlName.getLocalPart() + "_RequestStruct";
- }
- else
- javaType = this.getJavaTypeAsString(xmlName, xmlType );
-
+ String javaType = getJavaTypeAsString(xmlName, xmlType, array, primitive);
mppm.setParamType(javaType);
//WSDL Message Mapping
Modified: trunk/src/main/java/org/jboss/ws/tools/helpers/ToolsHelper.java
===================================================================
--- trunk/src/main/java/org/jboss/ws/tools/helpers/ToolsHelper.java 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/main/java/org/jboss/ws/tools/helpers/ToolsHelper.java 2006-07-25 21:23:26 UTC (rev 638)
@@ -289,6 +289,7 @@
WSDLToJava wsdlToJava = new WSDLToJava();
wsdlToJava.setTypeMapping(new LiteralTypeMapping());
+
WSDLDefinitions wsdl = null;
try
{
@@ -324,6 +325,7 @@
if (glc != null)
wsdlToJava.setPackageNamespaceMap(glc.packageNamespaceMap);
+ wsdlToJava.setUnwrap(w2jc.unwrap);
wsdlToJava.generateSEI(wsdl, new File(outDir));
//Generate the Service File
@@ -334,6 +336,7 @@
MappingFileGenerator mgf = new MappingFileGenerator(wsdl, new LiteralTypeMapping());
mgf.setPackageName(getPackageName(wsdl, glc));
mgf.setServiceName(wsdl.getServices()[0].getName().toString());
+ mgf.setUnwrap(w2jc.unwrap);
//mgf.generate();
JavaWsdlMapping jwm = mgf.generate();
Modified: trunk/src/main/java/org/jboss/ws/tools/interfaces/WSDLToJavaIntf.java
===================================================================
--- trunk/src/main/java/org/jboss/ws/tools/interfaces/WSDLToJavaIntf.java 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/main/java/org/jboss/ws/tools/interfaces/WSDLToJavaIntf.java 2006-07-25 21:23:26 UTC (rev 638)
@@ -29,11 +29,11 @@
import org.jboss.ws.jaxrpc.LiteralTypeMapping;
import org.jboss.ws.metadata.wsdl.WSDLDefinitions;
import org.jboss.ws.metadata.wsdl.WSDLException;
-
+
/**
- * Defines the contract for WSDL To Java Converters
+ * Defines the contract for WSDL To Java Converters
* @author <mailto:Anil.Saldhana at jboss.org>Anil Saldhana
- * @since Jul 23, 2005
+ * @since Jul 23, 2005
*/
public interface WSDLToJavaIntf
@@ -81,22 +81,26 @@
* Generate the SEI
* @param wsdl The WSDL20Definitions (root of the object tree)
* @param dir The directory where the SEI files will be written
- * @throws IOException
+ * @throws IOException
* @throws Exception
*/
- public void generateSEI(WSDLDefinitions wsdl, File dir) throws IOException;
-
+ public void generateSEI(WSDLDefinitions wsdl, File dir) throws IOException;
+
/**
* Global configuration from user that defines a map of package->Namespace
- *
+ *
* @param map
*/
public void setPackageNamespaceMap(Map<String,String> map);
-
+
/**
- * The client can provide a type mapping
+ * The client can provide a type mapping
* @param typeMapping
*/
public void setTypeMapping(LiteralTypeMapping typeMapping);
+ public boolean isUnwrap();
+
+ public void setUnwrap(boolean unwrap);
+
}
Modified: trunk/src/main/java/org/jboss/ws/tools/mapping/MappingFileGenerator.java
===================================================================
--- trunk/src/main/java/org/jboss/ws/tools/mapping/MappingFileGenerator.java 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/main/java/org/jboss/ws/tools/mapping/MappingFileGenerator.java 2006-07-25 21:23:26 UTC (rev 638)
@@ -93,6 +93,8 @@
*/
protected LiteralTypeMapping typeMapping = null;
+ protected boolean unwrap = false;
+
public MappingFileGenerator(WSDLDefinitions wsdl, TypeMapping typeM)
{
this.wsdlDefinitions = wsdl;
@@ -154,6 +156,16 @@
this.typeNamespace = typeNamespace;
}
+ public boolean isUnwrap()
+ {
+ return unwrap;
+ }
+
+ public void setUnwrap(boolean unwrap)
+ {
+ this.unwrap = unwrap;
+ }
+
/**
* Method that generates the jaxrpc mapping metadata
* <dt>Guidance:<dd>
@@ -166,7 +178,7 @@
public JavaWsdlMapping generate() throws IOException
{
MappingFileGeneratorHelper helper = new MappingFileGeneratorHelper(this.wsdlDefinitions, this.serviceName, this.packageName, this.serviceEndpointInterface,
- this.typeNamespace, this.typeMapping);
+ this.typeNamespace, this.typeMapping, this.unwrap);
String targetNS = wsdlDefinitions.getTargetNamespace();
if (typeNamespace == null)
typeNamespace = targetNS;
Modified: trunk/src/main/resources/samples/jsr181pojo/build.xml
===================================================================
--- trunk/src/main/resources/samples/jsr181pojo/build.xml 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/main/resources/samples/jsr181pojo/build.xml 2006-07-25 21:23:26 UTC (rev 638)
@@ -23,6 +23,12 @@
<!-- samples/jsr181pojo -->
<wstools dest="${build.test.dir}/wstools/resources/samples/jsr181pojo/META-INF"
config="${resources.dir}/wstools-config.xml"/>
+
+ <!-- samples/jsr181pojo/docwrapped -->
+ <wstools dest="${build.test.dir}/wstools/resources/samples/jsr181pojo/docwrapped/META-INF" config="${resources.dir}/docwrapped/wstools-config.xml"/>
+ <move todir="${build.test.dir}/wstools/java">
+ <fileset dir="${build.test.dir}/wstools/resources/samples/jsr181pojo/docwrapped/META-INF" includes="org/**"/>
+ </move>
</target>
@@ -49,7 +55,26 @@
<include name="wsdl/**"/>
</metainf>
</jar>
-
+
+ <!-- jbossws-samples-jsr181pojo-docwrapped -->
+ <war warfile="${build.test.dir}/libs/jbossws-samples-jsr181pojo-docwrapped.war" webxml="${build.test.dir}/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml">
+ <classes dir="${build.test.dir}/classes">
+ <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/JSEBean01.class"/>
+ </classes>
+ </war>
+ <jar jarfile="${build.test.dir}/libs/jbossws-samples-jsr181pojo-docwrapped-client.jar">
+ <fileset dir="${build.test.dir}/classes">
+ <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/EndpointInterface.class"/>
+ <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/Concat.class"/>
+ <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/ConcatResponse.class"/>
+ </fileset>
+ <metainf dir="${build.test.dir}/resources/samples/jsr181pojo/docwrapped/META-INF">
+ <include name="application-client.xml"/>
+ <include name="jboss-client.xml"/>
+ <include name="jaxrpc-mapping.xml"/>
+ <include name="wsdl/**"/>
+ </metainf>
+ </jar>
</target>
<!--
@@ -62,4 +87,4 @@
</antcall>
</target>
-</project>
\ No newline at end of file
+</project>
Modified: trunk/src/main/resources/schema/jbossws-tool_1_0.xsd
===================================================================
--- trunk/src/main/resources/schema/jbossws-tool_1_0.xsd 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/main/resources/schema/jbossws-tool_1_0.xsd 2006-07-25 21:23:26 UTC (rev 638)
@@ -230,6 +230,11 @@
<xs:documentation>Specifies the location of the WSDL file as a URL. The URL may be either absolute or relative to the current directory. Remote protocols such as http are supported.</xs:documentation>
</xs:annotation>
</xs:attribute>
+ <xs:attribute name="unwrap" type="xs:boolean" use="optional" default="false">
+ <xs:annotation>
+ <xs:documentation>Whether to unwrap a document/literal webservice reques and response message. This is intended to be used on a service that follows the "wrapped" convention.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
</xs:complexType>
<xs:complexType name="parameterType">
<xs:attribute name="type" use="required">
Modified: trunk/src/test/ant/build-jars.xml
===================================================================
--- trunk/src/test/ant/build-jars.xml 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/test/ant/build-jars.xml 2006-07-25 21:23:26 UTC (rev 638)
@@ -1265,6 +1265,26 @@
</classes>
</war>
+ <!-- jbossws-samples-jsr181pojo-docwrapped -->
+ <war warfile="${build.test.dir}/libs/jbossws-samples-jsr181pojo-docwrapped.war" webxml="${build.test.dir}/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml">
+ <classes dir="${build.test.dir}/classes">
+ <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/JSEBean01.class"/>
+ </classes>
+ </war>
+ <jar jarfile="${build.test.dir}/libs/jbossws-samples-jsr181pojo-docwrapped-client.jar">
+ <fileset dir="${build.test.dir}/classes">
+ <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/EndpointInterface.class"/>
+ <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/Concat.class"/>
+ <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/ConcatResponse.class"/>
+ </fileset>
+ <metainf dir="${build.test.dir}/resources/samples/jsr181pojo/docwrapped/META-INF">
+ <include name="application-client.xml"/>
+ <include name="jboss-client.xml"/>
+ <include name="jaxrpc-mapping.xml"/>
+ <include name="wsdl/**"/>
+ </metainf>
+ </jar>
+
<!-- jbossws-samples-message -->
<war warfile="${build.test.dir}/libs/jbossws-samples-message.war" webxml="${build.test.dir}/resources/samples/message/WEB-INF/web.xml">
<classes dir="${build.test.dir}/classes">
Modified: trunk/src/test/build.xml
===================================================================
--- trunk/src/test/build.xml 2006-07-25 13:23:40 UTC (rev 637)
+++ trunk/src/test/build.xml 2006-07-25 21:23:26 UTC (rev 638)
@@ -265,6 +265,10 @@
<wstools dest="${build.test.dir}/wstools/resources/samples/jsr109ejb/rpclit/META-INF" config="${test.resources.dir}/samples/jsr109ejb/rpclit/wstools-config.xml"/>
<wstools dest="${build.test.dir}/wstools/resources/samples/jsr109pojo/doclit/WEB-INF" config="${test.resources.dir}/samples/jsr109pojo/doclit/wstools-config.xml"/>
<wstools dest="${build.test.dir}/wstools/resources/samples/jsr109pojo/rpclit/WEB-INF" config="${test.resources.dir}/samples/jsr109pojo/rpclit/wstools-config.xml"/>
+ <wstools dest="${build.test.dir}/wstools/resources/samples/jsr181pojo/docwrapped/META-INF" config="${test.resources.dir}/samples/jsr181pojo/docwrapped/wstools-config.xml"/>
+ <move todir="${build.test.dir}/wstools/java">
+ <fileset dir="${build.test.dir}/wstools/resources/samples/jsr181pojo/docwrapped/META-INF" includes="org/**"/>
+ </move>
<wstools dest="${build.test.dir}/wstools/resources/samples/message/WEB-INF" config="${test.resources.dir}/samples/message/wstools-config.xml"/>
<!-- wstools dest="${build.test.dir}/wstools/resources/samples/mtom/WEB-INF" config="${test.resources.dir}/samples/mtom/wstools-config.xml"/ -->
<wstools dest="${build.test.dir}/wstools/resources/samples/oneway/WEB-INF" config="${test.resources.dir}/samples/oneway/wstools-config.xml"/>
@@ -455,4 +459,4 @@
<delete dir="${build.test.dir}"/>
</target>
-</project>
\ No newline at end of file
+</project>
Copied: trunk/src/test/resources/samples/jsr181pojo/docwrapped (from rev 568, branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped)
Copied: trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF (from rev 568, branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF)
Deleted: trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml
===================================================================
--- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml 2006-07-06 01:20:41 UTC (rev 568)
+++ trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml 2006-07-25 21:23:26 UTC (rev 638)
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<application-client xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application-client_1_4.xsd"
- version="1.4">
-
- <display-name>JSR-181 Annotation test</display-name>
-
- <service-ref>
- <service-ref-name>service/TestService</service-ref-name>
- <service-interface>javax.xml.rpc.Service</service-interface>
- <wsdl-file>META-INF/wsdl/TestService.wsdl</wsdl-file>
- <jaxrpc-mapping-file>META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>
- <port-component-ref>
- <service-endpoint-interface>org.jboss.test.ws.samples.jsr181pojo.docwrapped.EndpointInterface</service-endpoint-interface>
- </port-component-ref>
- </service-ref>
-
-</application-client>
-
Copied: trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml (from rev 568, branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml)
Deleted: trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml
===================================================================
--- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml 2006-07-06 01:20:41 UTC (rev 568)
+++ trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml 2006-07-25 21:23:26 UTC (rev 638)
@@ -1,9 +0,0 @@
-<?xml version='1.0' encoding='UTF-8' ?>
-
-<!DOCTYPE jboss-client PUBLIC
- "-//JBoss//DTD Application Client 4.0//EN"
- "http://www.jboss.org/j2ee/dtd/jboss-client_4_0.dtd">
-
-<jboss-client>
- <jndi-name>jbossws-client</jndi-name>
-</jboss-client>
Copied: trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml (from rev 568, branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml)
Copied: trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl (from rev 568, branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl)
Deleted: trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl
===================================================================
--- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl 2006-07-06 01:20:41 UTC (rev 568)
+++ trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl 2006-07-25 21:23:26 UTC (rev 638)
@@ -1,48 +0,0 @@
-<definitions name='TestService' targetNamespace='http://org.jboss.ws/samples/jsr181pojo/docwrapped' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://org.jboss.ws/samples/jsr181pojo/docwrapped' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
- <types>
- <schema elementFormDefault='qualified' targetNamespace='http://org.jboss.ws/samples/jsr181pojo/docwrapped' xmlns='http://www.w3.org/2001/XMLSchema' xmlns:soap11-enc='http://schemas.xmlsoap.org/soap/encoding/' xmlns:tns='http://org.jboss.ws/samples/jsr181pojo/docwrapped' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
- <complexType name='concat'>
- <sequence>
- <element name='String_1' nillable='true' type='string'/>
- <element name='long_1' type='long'/>
- </sequence>
- </complexType>
- <complexType name='concatResponse'>
- <sequence>
- <element name='result' nillable='true' type='string'/>
- </sequence>
- </complexType>
- <element name='concat' type='tns:concat'/>
- <element name='concatResponse' type='tns:concatResponse'/>
- </schema>
- </types>
- <message name='EndpointInterface_concat'>
- <part element='tns:concat' name='parameters'/>
- </message>
- <message name='EndpointInterface_concatResponse'>
- <part element='tns:concatResponse' name='result'/>
- </message>
- <portType name='EndpointInterface'>
- <operation name='concat'>
- <input message='tns:EndpointInterface_concat'/>
- <output message='tns:EndpointInterface_concatResponse'/>
- </operation>
- </portType>
- <binding name='EndpointInterfaceBinding' type='tns:EndpointInterface'>
- <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
- <operation name='concat'>
- <soap:operation soapAction=''/>
- <input>
- <soap:body use='literal'/>
- </input>
- <output>
- <soap:body use='literal'/>
- </output>
- </operation>
- </binding>
- <service name='TestService'>
- <port binding='tns:EndpointInterfaceBinding' name='EndpointInterfacePort'>
- <soap:address location='http://draught:8080/jbossws-samples-jsr181pojo-docwrapped/TestService'/>
- </port>
- </service>
-</definitions>
\ No newline at end of file
Copied: trunk/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl (from rev 568, branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl)
Copied: trunk/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF (from rev 568, branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF)
Deleted: trunk/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml
===================================================================
--- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml 2006-07-06 01:20:41 UTC (rev 568)
+++ trunk/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml 2006-07-25 21:23:26 UTC (rev 638)
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
- version="2.4">
-
- <servlet>
- <servlet-name>TestService</servlet-name>
- <servlet-class>org.jboss.test.ws.samples.jsr181pojo.docwrapped.JSEBean01</servlet-class>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>TestService</servlet-name>
- <url-pattern>/*</url-pattern>
- </servlet-mapping>
-
-</web-app>
-
Copied: trunk/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml (from rev 568, branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml)
Deleted: trunk/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml
===================================================================
--- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml 2006-07-06 01:20:41 UTC (rev 568)
+++ trunk/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml 2006-07-25 21:23:26 UTC (rev 638)
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
- wstools -config wstools-config.xml
--->
-
-<configuration xmlns="http://www.jboss.org/jbossws-tools"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.jboss.org/jbossws-tools http://www.jboss.org/jbossws-tools/schema/jbossws-tool_1_0.xsd">
-
- <global>
- <package-namespace package="org.jboss.test.ws.samples.jsr181pojo.docwrapped" namespace="http://org.jboss.ws/samples/jsr181pojo/docwrapped"/>
- </global>
- <wsdl-java unwrap="true" file="resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl">
- <mapping file="jaxrpc-mapping.xml" />
- </wsdl-java>
-
-</configuration>
Copied: trunk/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml (from rev 568, branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml)
More information about the jboss-svn-commits
mailing list