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 sc...@apache.org on 2008/02/15 16:27:06 UTC
svn commit: r628087 - in /webservices/axis2/trunk/java/modules:
jaxws/src/org/apache/axis2/jaxws/message/databinding/
kernel/src/org/apache/axis2/wsdl/util/
metadata/src/org/apache/axis2/jaxws/description/
metadata/src/org/apache/axis2/jaxws/descriptio...
Author: scheu
Date: Fri Feb 15 07:27:05 2008
New Revision: 628087
URL: http://svn.apache.org/viewvc?rev=628087&view=rev
Log:
AXIS2-2968
Contributor:Tom Seelbach
Surface configuration parameters to the code pieces that create the WSDLWrapper.
Added:
webservices/axis2/trunk/java/modules/metadata/test-resources/axis2.xml
webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/DBCwithReduceWSDLMemoryParmsTests.java
Modified:
webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLDefinitionWrapper.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperBasicImpl.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperReloadImpl.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperSaveImpl.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/DescriptionFactory.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderComposite.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/util/WSDL4JWrapper.java
webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImplTests.java
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java Fri Feb 15 07:27:05 2008
@@ -79,7 +79,9 @@
// as long as you don't use one instance from two threads at the same time.
// ENABLE_ADV_POOLING is false...which means they are obtained from the JAXBContext instead of
// from the pool.
- private static boolean ENABLE_ADV_POOLING = false;
+ private static boolean ENABLE_MARSHALL_POOLING = false;
+ private static boolean ENABLE_UNMARSHALL_POOLING = true;
+ private static boolean ENABLE_INTROSPECTION_POOLING = false;
// The maps are freed up when a LOAD FACTOR is hit
private static int MAX_LOAD_FACTOR = 32;
@@ -376,7 +378,7 @@
* @throws JAXBException
*/
public static Unmarshaller getJAXBUnmarshaller(JAXBContext context) throws JAXBException {
- if (!ENABLE_ADV_POOLING) {
+ if (!ENABLE_UNMARSHALL_POOLING) {
if (log.isDebugEnabled()) {
log.debug("Unmarshaller created [no pooling]");
}
@@ -407,8 +409,9 @@
if (log.isDebugEnabled()) {
log.debug("Unmarshaller placed back into pool");
}
- if (ENABLE_ADV_POOLING) {
+ if (ENABLE_UNMARSHALL_POOLING) {
adjustPoolSize(umap);
+ unmarshaller.setAttachmentUnmarshaller(null);
umap.put(context, unmarshaller);
}
}
@@ -422,7 +425,7 @@
*/
public static Marshaller getJAXBMarshaller(JAXBContext context) throws JAXBException {
Marshaller m = null;
- if (!ENABLE_ADV_POOLING) {
+ if (!ENABLE_MARSHALL_POOLING) {
if (log.isDebugEnabled()) {
log.debug("Marshaller created [no pooling]");
}
@@ -455,8 +458,9 @@
if (log.isDebugEnabled()) {
log.debug("Marshaller placed back into pool");
}
- if (ENABLE_ADV_POOLING) {
+ if (ENABLE_MARSHALL_POOLING) {
adjustPoolSize(mmap);
+ marshaller.setAttachmentMarshaller(null);
mmap.put(context, marshaller);
}
}
@@ -470,7 +474,7 @@
*/
public static JAXBIntrospector getJAXBIntrospector(JAXBContext context) throws JAXBException {
JAXBIntrospector i = null;
- if (!ENABLE_ADV_POOLING) {
+ if (!ENABLE_INTROSPECTION_POOLING) {
if (log.isDebugEnabled()) {
log.debug("JAXBIntrospector created [no pooling]");
}
@@ -502,7 +506,7 @@
if (log.isDebugEnabled()) {
log.debug("JAXBIntrospector placed back into pool");
}
- if (ENABLE_ADV_POOLING) {
+ if (ENABLE_INTROSPECTION_POOLING) {
adjustPoolSize(imap);
imap.put(context, introspector);
}
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLDefinitionWrapper.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLDefinitionWrapper.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLDefinitionWrapper.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLDefinitionWrapper.java Fri Feb 15 07:27:05 2008
@@ -107,9 +107,19 @@
* @param def The WSDL Definition
*/
public WSDLDefinitionWrapper(Definition def) {
+ if (log.isDebugEnabled() ) {
+ log.debug("WSDLDefinitionWrapper(Definition) entry");
+ }
prepare(def, null);
}
+ public WSDLDefinitionWrapper(Definition def,AxisConfiguration axisConfig ) {
+ if (log.isDebugEnabled() ) {
+ log.debug("WSDLDefinitionWrapper(Definition,AxisConfiguration) entry ");
+ }
+ setupMemoryParms(axisConfig);
+ prepare(def, null);
+ }
/**
* Constructor
@@ -118,6 +128,9 @@
* @param wURL The URL for the wsdl
*/
public WSDLDefinitionWrapper(Definition def, URL wURL) {
+ if (log.isDebugEnabled() ) {
+ log.debug("WSDLDefinitionWrapper(Definition,URL) entry");
+ }
prepare(def, wURL);
}
@@ -132,6 +145,9 @@
*/
public WSDLDefinitionWrapper(Definition def, URL wURL, boolean limitInMemory) {
reduceWSDLMemoryCache = limitInMemory;
+ if (log.isDebugEnabled() ) {
+ log.debug("WSDLDefinitionWrapper(Definition,URL,boolean) entry");
+ }
prepare(def, wURL);
}
@@ -147,6 +163,9 @@
public WSDLDefinitionWrapper(Definition def, URL wURL, int limitType) {
reduceWSDLMemoryCache = true;
reduceWSDLMemoryType = limitType;
+ if (log.isDebugEnabled() ) {
+ log.debug("WSDLDefinitionWrapper(Definition,URL,int) entry");
+ }
prepare(def, wURL);
}
@@ -159,28 +178,45 @@
* @param axisCfg The AxisConfiguration object, to be used to get configuration settings
*/
public WSDLDefinitionWrapper(Definition def, URL wURL, AxisConfiguration axisCfg) {
+ if (log.isDebugEnabled() ) {
+ log.debug("WSDLDefinitionWrapper(Definition,URL,AxisConfiguration) entry");
+ }
+
+ // determine what the setting for the memory optimization is
+ setupMemoryParms(axisCfg);
+ prepare(def, wURL);
+ }
+
+
+
+ private void setupMemoryParms( AxisConfiguration axisCfg) {
+ if (log.isDebugEnabled() ) {
+ log.debug("setupMemoryParms(AxisConfiguration) entry");
+ }
// determine what the setting for the memory optimization is
- Parameter param = axisCfg.getParameter(Constants.Configuration.REDUCE_WSDL_MEMORY_CACHE);
+ if (axisCfg != null) {
+ Parameter param = axisCfg.getParameter(Constants.Configuration.REDUCE_WSDL_MEMORY_CACHE);
- reduceWSDLMemoryCache =
+ reduceWSDLMemoryCache =
param != null && ((String) param.getValue()).equalsIgnoreCase("true");
- param = axisCfg.getParameter(Constants.Configuration.REDUCE_WSDL_MEMORY_TYPE);
+ param = axisCfg.getParameter(Constants.Configuration.REDUCE_WSDL_MEMORY_TYPE);
- if (param != null) {
- String value = (String) param.getValue();
+ if (param != null) {
+ String value = (String) param.getValue();
- if (value != null) {
- Integer i = new Integer(value);
- reduceWSDLMemoryType = i.intValue();
+ if (value != null) {
+ Integer i = new Integer(value);
+ reduceWSDLMemoryType = i.intValue();
+ }
+ }
+ if (log.isDebugEnabled() ) {
+ log.debug("reduceWSDLMemoryCache:"+ reduceWSDLMemoryCache + ", reduceWSDLMemoryType:" + reduceWSDLMemoryType );
}
}
-
- prepare(def, wURL);
}
-
/**
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperBasicImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperBasicImpl.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperBasicImpl.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperBasicImpl.java Fri Feb 15 07:27:05 2008
@@ -108,6 +108,9 @@
* @param wURL The URL where the WSDL is obtained
*/
private void prepare(Definition def, URL wURL) {
+ if (isDebugEnabled) {
+ log.debug(myClassName + ".prepare()");
+ }
wsdlDefinition = def;
wsdlURL = wURL;
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperReloadImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperReloadImpl.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperReloadImpl.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperReloadImpl.java Fri Feb 15 07:27:05 2008
@@ -114,6 +114,9 @@
* @param wURL The URL where the WSDL is obtained
*/
private void prepare(Definition def, URL wURL) {
+ if (isDebugEnabled) {
+ log.debug(myClassName + ".prepare()");
+ }
wsdlDefinition = def;
wsdlURL = wURL;
@@ -990,9 +993,9 @@
public String toString() {
if (wsdlDefinition != null) {
- return wsdlDefinition.toString();
+ return this.getClass().getName() + "\n" + wsdlDefinition.toString();
}
- return "";
+ return this.getClass().getName();
}
//-------------------------------------------------------------------------
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperSaveImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperSaveImpl.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperSaveImpl.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/wsdl/util/WSDLWrapperSaveImpl.java Fri Feb 15 07:27:05 2008
@@ -149,6 +149,9 @@
* @param wURL The URL where the WSDL is obtained
*/
private void prepare(Definition def, URL wURL) {
+ if (isDebugEnabled) {
+ log.debug(myClassName + ".prepare()");
+ }
wsdlDefinition = def;
wsdlURL = wURL;
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/DescriptionFactory.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/DescriptionFactory.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/DescriptionFactory.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/DescriptionFactory.java Fri Feb 15 07:27:05 2008
@@ -18,6 +18,7 @@
*/
package org.apache.axis2.jaxws.description;
+import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.description.AxisService;
import org.apache.axis2.jaxws.ClientConfigurationFactory;
@@ -285,7 +286,36 @@
*/
public static List<ServiceDescription> createServiceDescriptionFromDBCMap(
HashMap<String, DescriptionBuilderComposite> dbcMap) {
- return DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(dbcMap);
+ return DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(dbcMap, null);
+ }
+
+ /**
+ * Create a full ServiceDescription hierarchy on the SERVER side for EACH service implementation
+ * entry in the DescriptionBuilderComposite (DBC) map. Note that the associated SERVER side
+ * Axis description objects are also created. To create a single ServiceDescription hierarchy
+ * for a single service implementation class, use the factory method that takes a single class
+ * and returns a single ServiceDescription.
+ * <p/>
+ * A service implementation DBC entry is one that: (1) Is a class and not an interface (2)
+ * Carries a WebService or WebServiceProvider annotation.
+ * <p/>
+ * A DBC represents the information found in the service implementation class. There will be
+ * other DBC entries in the map for classes and interfaces associated with the service
+ * implementation, such as super classes, super interfaces, fault classes, and such.
+ * <p/>
+ * Note that map may contain > 1 service implementation DBC. A full ServiceDescriptionhierarchy
+ * will be created for each service implementation DBC entry.
+ * <p/>
+ * Note that each ServiceDescription will have exactly one EndpointDescription corresponding to
+ * each service implementation.
+ *
+ * @param dbcMap A HashMap keyed on class name with a value for the DBC for that classname
+ * @param configContext ConfigurationContext used to get WSDL Definition configuration parameters.
+ * @return A List of ServiceDescriptions with the associated SERVER side hierarchy created.
+ */
+ public static List<ServiceDescription> createServiceDescriptionFromDBCMap(
+ HashMap<String, DescriptionBuilderComposite> dbcMap,ConfigurationContext configContext) {
+ return DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(dbcMap, configContext);
}
/**
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderComposite.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderComposite.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderComposite.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderComposite.java Fri Feb 15 07:27:05 2008
@@ -31,9 +31,7 @@
import javax.wsdl.Definition;
import javax.xml.namespace.QName;
-import javax.xml.ws.spi.WebServiceFeatureAnnotation;
-
-import java.io.InputStream;
+import org.apache.axis2.context.ConfigurationContext;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.net.URL;
@@ -58,7 +56,11 @@
*/
public DescriptionBuilderComposite() {
+ this((ConfigurationContext)null);
+ }
+ public DescriptionBuilderComposite(ConfigurationContext configContext) {
+ myConfigContext = configContext;
methodDescriptions = new ArrayList<MethodDescriptionComposite>();
fieldDescriptions = new ArrayList<FieldDescriptionComposite>();
webServiceRefAnnotList = new ArrayList<WebServiceRefAnnot>();
@@ -72,6 +74,8 @@
private URL wsdlURL = null;
private WSDL4JWrapper wsdlWrapper = null;
+ private ConfigurationContext myConfigContext;
+
// Class-level annotations
private WebServiceAnnot webServiceAnnot;
private WebServiceProviderAnnot webServiceProviderAnnot;
@@ -736,6 +740,20 @@
}
sb.append(newLine);
+ sb.append("is Service Provider: " + isServiceProvider() );
+
+ sb.append(newLine);
+ sb.append("wsdlURL: " + getWsdlURL() );
+
+ sb.append(newLine);
+ sb.append("has wsdlDefinition?: ");
+ if (wsdlDefinition !=null) {
+ sb.append("true");
+ } else {
+ sb.append("false");
+ }
+
+ sb.append(newLine);
sb.append("Interfaces: ");
Iterator<String> intIter = interfacesList.iterator();
while (intIter.hasNext()) {
@@ -838,7 +856,12 @@
Definition wsdlDef = null;
try {
- wsdlWrapper = new WSDL4JWrapper(_wsdlURL);
+ if (log.isDebugEnabled() ) {
+ log.debug("new WSDL4JWrapper(" + _wsdlURL.toString() + ",ConfigurationContext" );
+ }
+
+ wsdlWrapper = new WSDL4JWrapper(_wsdlURL, myConfigContext);
+
if (wsdlWrapper != null) {
wsdlDef = wsdlWrapper.getDefinition();
}
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java Fri Feb 15 07:27:05 2008
@@ -219,7 +219,7 @@
if (serviceImplClass != null) {
JavaClassToDBCConverter converter = new JavaClassToDBCConverter(serviceImplClass);
HashMap<String, DescriptionBuilderComposite> dbcMap = converter.produceDBC();
- List<ServiceDescription> serviceDescList = createServiceDescriptionFromDBCMap(dbcMap);
+ List<ServiceDescription> serviceDescList = createServiceDescriptionFromDBCMap(dbcMap, null);
if (serviceDescList != null && serviceDescList.size() > 0) {
serviceDesc = serviceDescList.get(0);
if (log.isDebugEnabled()) {
@@ -239,17 +239,19 @@
/** @see org.apache.axis2.jaxws.description.DescriptionFactory#createServiceDescriptionFromDBCMap(HashMap) */
public static List<ServiceDescription> createServiceDescriptionFromDBCMap(
- HashMap<String, DescriptionBuilderComposite> dbcMap) {
+ HashMap<String, DescriptionBuilderComposite> dbcMap, ConfigurationContext configContext) {
+ if (log.isDebugEnabled()) {
+ log.debug("createServiceDescriptionFromDBCMap(Hashmap<String,DescriptionBuilderComposite>,ConfigurationContext " );
+ }
List<ServiceDescription> serviceDescriptionList = new ArrayList<ServiceDescription>();
-
for (Iterator<DescriptionBuilderComposite> nameIter = dbcMap.values()
.iterator(); nameIter.hasNext();) {
DescriptionBuilderComposite serviceImplComposite = nameIter.next();
if (isImpl(serviceImplComposite)) {
// process this impl class
- ServiceDescription serviceDescription = new ServiceDescriptionImpl(
- dbcMap, serviceImplComposite);
+ ServiceDescriptionImpl serviceDescription = new ServiceDescriptionImpl(
+ dbcMap, serviceImplComposite, configContext);
ServiceDescriptionValidator validator =
new ServiceDescriptionValidator(serviceDescription);
if (validator.validate()) {
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java Fri Feb 15 07:27:05 2008
@@ -147,6 +147,9 @@
ServiceDescriptionImpl(URL wsdlURL, QName serviceQName, Class serviceClass,
DescriptionBuilderComposite sparseComposite,
Object sparseCompositeKey) {
+ if (log.isDebugEnabled()) {
+ log.debug("ServiceDescriptionImpl(URL,QName,Class,DescriptionBuilderComposite,Object)");
+ }
if (serviceQName == null) {
throw ExceptionFactory.makeWebServiceException(Messages.getMessage("serviceDescErr0"));
}
@@ -228,7 +231,7 @@
/**
- * Create a service-provider side ServiceDesci. Create a service Description
+ * * Create a service-provider side ServiceDesciption. Create a service Description
* based on a service implementation class. Note this is for test-only code; it should not be
* used in production code. And it is being removed from the test code as well.
*
@@ -236,6 +239,9 @@
* @param serviceImplClass
*/
ServiceDescriptionImpl(Class serviceImplClass, AxisService axisService) {
+ if (log.isDebugEnabled()) {
+ log.debug("ServiceDescriptionImpl(Class,AxisService)");
+ }
composite = new DescriptionBuilderComposite();
composite.setIsDeprecatedServiceProviderConstruction(true);
composite.setIsServiceProvider(true);
@@ -250,6 +256,12 @@
// TODO: The ServiceQName instance variable should be set based on annotation or default
}
+ ServiceDescriptionImpl(
+ HashMap<String, DescriptionBuilderComposite> dbcMap,
+ DescriptionBuilderComposite composite) {
+ this(dbcMap, composite, null);
+ }
+
/**
* Create a service-provider side Service description hierachy. The hierachy is created entirely
* from composite. All relevant classes and interfaces referenced from the class represented by
@@ -259,8 +271,14 @@
*/
ServiceDescriptionImpl(
HashMap<String, DescriptionBuilderComposite> dbcMap,
- DescriptionBuilderComposite composite) {
+ DescriptionBuilderComposite composite,
+ ConfigurationContext configContext) {
this.composite = composite;
+
+ this.configContext = configContext;
+ if (log.isDebugEnabled()) {
+ log.debug("ServiceDescriptionImpl(HashMap<String,DescriptionBuilderComposite>,ConfigurationContext)");
+ }
String serviceImplName = this.composite.getClassName();
@@ -628,6 +646,10 @@
// Note that there may be no WSDL provided, for example when called from
// Service.create(QName serviceName).
+ if (log.isDebugEnabled()) {
+ log.debug("setupWsdlDefinition()");
+ }
+
if (composite.isServiceProvider()) {
// Currently, there is a bug which allows the wsdlDefinition to be placed
@@ -643,8 +665,16 @@
this.wsdlURL = composite.getWsdlURL();
try {
+ if (log.isDebugEnabled() ) {
+ if (configContext != null) {
+ log.debug("new WSDL4JWrapper-ConfigContext not null1");
+ } else {
+ log.debug("new WSDL4JWrapper-ConfigContext null1");
+ }
+ }
this.wsdlWrapper = new WSDL4JWrapper(this.wsdlURL,
- composite.getWsdlDefinition());
+ composite.getWsdlDefinition(),
+ configContext);
} catch (WSDLException e) {
throw ExceptionFactory.makeWebServiceException(
Messages.getMessage("wsdlException", e.getMessage()), e);
@@ -681,17 +711,37 @@
if (log.isDebugEnabled()) {
log.debug("Get the wsdl definition from the SEI composite.");
}
+
this.wsdlURL = seic.getWsdlURL();
+ if (log.isDebugEnabled() ) {
+ if (configContext != null) {
+ log.debug("new WSDL4JWrapper-ConfigContext not null2");
+ } else {
+ log.debug("new WSDL4JWrapper-ConfigContext null2");
+ }
+ }
this.wsdlWrapper =
- new WSDL4JWrapper(seic.getWsdlURL(), seic.getWsdlDefinition());
+ new WSDL4JWrapper(seic.getWsdlURL(),
+ seic.getWsdlDefinition(),
+ configContext);
+
} else if (composite.getWsdlDefinition() != null) {
//set the wsdl def from the impl. class composite
if (log.isDebugEnabled()) {
log.debug("Get the wsdl definition from the impl class composite.");
}
+ if (log.isDebugEnabled() ) {
+ if (configContext != null) {
+ log.debug("new WSDL4JWrapper-ConfigContext not null3");
+ } else {
+ log.debug("new WSDL4JWrapper-ConfigContext null3");
+ }
+ }
this.wsdlURL = composite.getWsdlURL();
this.wsdlWrapper = new WSDL4JWrapper(composite.getWsdlURL(),
- composite.getWsdlDefinition());
+ composite.getWsdlDefinition(),
+ configContext);
+
} else {
String wsdlLocation = null;
// first check to see if the wsdlLocation is on the SEI
@@ -732,7 +782,15 @@
//Deprecate this code block when MDQ is fully integrated
} else if (wsdlURL != null) {
try {
- this.wsdlWrapper = new WSDL4JWrapper(this.wsdlURL);
+ if (log.isDebugEnabled() ) {
+ if (configContext != null) {
+ log.debug("new WSDL4JWrapper-ConfigContext not null4");
+ } else {
+ log.debug("new WSDL4JWrapper-ConfigContext null4");
+ }
+ }
+ this.wsdlWrapper = new WSDL4JWrapper(this.wsdlURL,configContext);
+
}
catch (FileNotFoundException e) {
throw ExceptionFactory.makeWebServiceException(
@@ -779,6 +837,13 @@
log.debug("Attempting to read WSDL: " + wsdlLocation + " for web " +
"service endpoint: " + composite.getClassName());
}
+ if (log.isDebugEnabled() ) {
+ if (configContext != null) {
+ log.debug("new WSDL4JWrapper-ConfigContext not null5");
+ } else {
+ log.debug("new WSDL4JWrapper-ConfigContext null5");
+ }
+ }
URL url = getWSDLURL(wsdlLocation);
this.wsdlWrapper = new WSDL4JWrapper(url);
composite.setWsdlDefinition(wsdlWrapper.getDefinition());
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/util/WSDL4JWrapper.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/util/WSDL4JWrapper.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/util/WSDL4JWrapper.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/util/WSDL4JWrapper.java Fri Feb 15 07:27:05 2008
@@ -19,6 +19,10 @@
package org.apache.axis2.jaxws.util;
+import org.apache.axis2.Constants;
+import org.apache.axis2.engine.AxisConfiguration;
+import org.apache.axis2.description.Parameter;
+import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.java.security.AccessController;
import org.apache.axis2.jaxws.ExceptionFactory;
import org.apache.axis2.jaxws.i18n.Messages;
@@ -70,12 +74,25 @@
private URL wsdlURL;
private String wsdlExplicitURL;
+ private ConfigurationContext configContext;
+ /**
+ * Constructor
+ *
+ * @param URL The URL for the WSDL
+ */
public WSDL4JWrapper(URL wsdlURL) throws FileNotFoundException, UnknownHostException,
ConnectException, IOException, WSDLException {
+ this(wsdlURL, (ConfigurationContext)null);
+ }
+
+ public WSDL4JWrapper(URL wsdlURL, ConfigurationContext configContext) throws FileNotFoundException, UnknownHostException,
+ ConnectException, IOException, WSDLException {
super();
+ this.configContext = configContext;
+ // debugMemoryParms(configContext);
if(log.isDebugEnabled()) {
- log.debug("Looking for wsdl file on client: " + (wsdlURL != null ?
+ log.debug("WSDL4JWrapper(URL,ConfigurationContext) - Looking for wsdl file on client: " + (wsdlURL != null ?
wsdlURL.getPath():null));
}
ClassLoader classLoader = (ClassLoader) AccessController.doPrivileged(
@@ -331,19 +348,51 @@
return reader;
}
+ /**
+ * Constructor
+ *
+ * @param URL The URL for the WSDL
+ * @param Definition Definition for the WSDL
+ */
public WSDL4JWrapper(URL wsdlURL, Definition wsdlDefinition) throws WSDLException {
+ this(wsdlURL, wsdlDefinition, null);
+ }
+
+
+ /**
+ * Constructor
+ *
+ * @param URL The URL for the WSDL
+ * @param Definition Definition for the WSDL
+ * @param ConfigurationContext to get parameters for WSDL building
+ */
+ public WSDL4JWrapper(URL wsdlURL, Definition wsdlDefinition, ConfigurationContext configContext) throws WSDLException {
super();
+ if (log.isDebugEnabled() ) { log.debug("WSDL4JWrapper(URL,Definition,ConfigContext) entry"); }
+
+ this.configContext = configContext;
this.wsdlURL = wsdlURL;
if ((wsdlDefinition != null) && !(wsdlDefinition instanceof WSDLDefinitionWrapper)) {
- this.wsdlDefinition = new WSDLDefinitionWrapper(wsdlDefinition, wsdlURL);
+ if (configContext != null) {
+ this.wsdlDefinition = new WSDLDefinitionWrapper(wsdlDefinition, wsdlURL, configContext.getAxisConfiguration() );
+ } else {
+ this.wsdlDefinition = new WSDLDefinitionWrapper(wsdlDefinition, wsdlURL);
+ }
} else {
this.wsdlDefinition = (WSDLDefinitionWrapper) wsdlDefinition;
}
}
+ /**
+ * Constructor
+ *
+ * @param Definition Definition for the WSDL
+ */
public WSDL4JWrapper(Definition wsdlDefinition) throws WSDLException {
super();
+ if (log.isDebugEnabled() ) { log.debug("WSDL4JWrapper(Definition) entry"); }
+
if ((wsdlDefinition != null) && !(wsdlDefinition instanceof WSDLDefinitionWrapper)) {
this.wsdlDefinition = new WSDLDefinitionWrapper(wsdlDefinition);
} else {
@@ -369,7 +418,11 @@
if (wsdlDefinition == null) {
Definition def = loadDefinition();
if (def != null) {
- wsdlDefinition = new WSDLDefinitionWrapper(def);
+ if (configContext != null) {
+ wsdlDefinition = new WSDLDefinitionWrapper(def, configContext.getAxisConfiguration() );
+ } else {
+ wsdlDefinition = new WSDLDefinitionWrapper(def, (AxisConfiguration)null);
+ }
}
}
return wsdlDefinition;
@@ -684,6 +737,39 @@
throw e.getException();
}
return is;
+ }
+
+ private void debugMemoryParms(ConfigurationContext configContext) {
+ if (configContext != null) {
+ AxisConfiguration axisCfg = configContext.getAxisConfiguration();
+
+ boolean reduceWSDLMemoryCache = false;
+ int reduceWSDLMemoryType = 9;
+ // determine what the setting for the memory optimization is
+ if (axisCfg != null) {
+ Parameter param = axisCfg.getParameter(Constants.Configuration.REDUCE_WSDL_MEMORY_CACHE);
+
+ reduceWSDLMemoryCache =
+ param != null && ((String) param.getValue()).equalsIgnoreCase("true");
+
+
+ param = axisCfg.getParameter(Constants.Configuration.REDUCE_WSDL_MEMORY_TYPE);
+
+ if (param != null) {
+ String value = (String) param.getValue();
+
+ if (value != null) {
+ Integer i = new Integer(value);
+ reduceWSDLMemoryType = i.intValue();
+ }
+ }
+ log.debug("reduceWSDLMemoryCache:"+ reduceWSDLMemoryCache + ", reduceWSDLMemoryType:" + reduceWSDLMemoryType );
+ } else {
+ log.debug("AxisConfiguration is null");
+ }
+ } else {
+ log.debug("ConfigContext is null");
+ }
}
}
Added: webservices/axis2/trunk/java/modules/metadata/test-resources/axis2.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/test-resources/axis2.xml?rev=628087&view=auto
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/test-resources/axis2.xml (added)
+++ webservices/axis2/trunk/java/modules/metadata/test-resources/axis2.xml Fri Feb 15 07:27:05 2008
@@ -0,0 +1,85 @@
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<axisconfig name="AxisJava2.0">
+
+<parameter name="reduceWSDLMemoryCache">true</parameter>
+<parameter name="reduceWSDLMemoryType">2</parameter>
+
+ <moduleConfig name="testModule">
+ <parameter name="testModulePara">N/A</parameter>
+ </moduleConfig>
+
+ <moduleConfig name="testModule2">
+ <parameter name="testModulePara2">N/A</parameter>
+ </moduleConfig>
+
+ <phaseOrder type="InFlow">
+ <!-- System pre defined phases -->
+ <phase name="Transport">
+ <handler name="RequestURIBasedDispatcher"
+ class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+ <handler name="SOAPActionBasedDispatcher"
+ class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+ </phase>
+ <phase name="Security"/>
+ <phase name="PreDispatch"/>
+ <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+ <handler name="AddressingBasedDispatcher"
+ class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+ <handler name="SOAPMessageBodyBasedDispatcher"
+ class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+ </phase>
+ <!-- System pre defined phases -->
+ <!-- After Postdispatch phase module author or or service author can add any phase he want -->
+ <phase name="OperationInPhase"/>
+ </phaseOrder>
+ <phaseOrder type="OutFlow">
+ <!-- user can add his own phases to this area -->
+ <phase name="OperationOutPhase"/>
+ <!--system predefined phase-->
+ <!--these phase will run irrespective of the service-->
+ <phase name="PolicyDetermination"/>
+ <phase name="MessageOut"/>
+ </phaseOrder>
+ <phaseOrder type="InFaultFlow">
+ <phase name="PreDispatch"/>
+ <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+ <handler name="RequestURIBasedDispatcher"
+ class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+
+ <handler name="SOAPActionBasedDispatcher"
+ class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+
+ <handler name="AddressingBasedDispatcher"
+ class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+ <handler name="SOAPMessageBodyBasedDispatcher"
+ class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+ </phase>
+ <!-- user can add his own phases to this area -->
+ <phase name="OperationInFaultPhase"/>
+ </phaseOrder>
+ <phaseOrder type="OutFaultFlow">
+ <!-- user can add his own phases to this area -->
+ <phase name="OperationOutFaultPhase"/>
+ <phase name="PolicyDetermination"/>
+ <phase name="MessageOut"/>
+ </phaseOrder>
+</axisconfig>
\ No newline at end of file
Added: webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/DBCwithReduceWSDLMemoryParmsTests.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/DBCwithReduceWSDLMemoryParmsTests.java?rev=628087&view=auto
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/DBCwithReduceWSDLMemoryParmsTests.java (added)
+++ webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/DBCwithReduceWSDLMemoryParmsTests.java Fri Feb 15 07:27:05 2008
@@ -0,0 +1,187 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.axis2.jaxws.description;
+
+import java.io.File;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.List;
+
+import junit.framework.TestCase;
+
+import org.apache.axis2.AxisFault;
+
+import javax.jws.WebService;
+import javax.wsdl.Definition;
+
+//import org.apache.axis2.wsdl.util.WSDLWrapperImpl;
+import org.apache.axis2.jaxws.util.WSDLWrapper;
+//import org.apache.axis2.wsdl.util.WSDLWrapperReloadImpl;
+
+import org.apache.axis2.jaxws.description.builder.DescriptionBuilderComposite;
+import org.apache.axis2.jaxws.description.builder.MethodDescriptionComposite;
+import org.apache.axis2.jaxws.description.builder.ParameterDescriptionComposite;
+import org.apache.axis2.jaxws.description.builder.WebServiceAnnot;
+
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.ConfigurationContextFactory;
+
+/**
+ * These tests are intended to test various aspects of the OperationDescription.
+ */
+
+public class DBCwithReduceWSDLMemoryParmsTests extends TestCase {
+
+ /**
+ * This test will confirm that when reduceWSDLMemoryCache is true
+ * and reduceWSDLMemoryType=2
+ * The WsdlDefinitionWrapper will construct WSDLWrapperReloadImpl classes
+ *
+ */
+ public static String basedir;
+ static {
+ basedir = System.getProperty("basedir");
+ if (basedir == null) {
+ basedir = new File(".").getAbsolutePath();
+ }
+ }
+
+ public void testDBCwithReduceWSDLMemoryParms() {
+
+ // I used OperationDescriptionTests as a template for this test
+
+ String axis2xml = basedir +
+ "/test-resources/axis2.xml";
+ ConfigurationContext cc;
+ try {
+
+ cc = ConfigurationContextFactory
+ .createConfigurationContextFromFileSystem(null, axis2xml);
+ if (cc !=null) {
+ String parm = (String)cc.getAxisConfiguration().getParameterValue("reduceWSDLMemoryCache") ;
+ //System.out.println("configContext parm:" + parm );
+ } else {
+ //System.out.println("configContext: is null" );
+ }
+ assertNotNull(axis2xml);
+
+ String wsdlRelativeLocation = "test-resources/wsdl/";
+ String wsdlFileName = "BindingNamespace.wsdl";
+ String targetNamespace = "http://nonanonymous.complextype.test.org";
+ String wsdlLocation = wsdlRelativeLocation + wsdlFileName;
+
+ // Build up a DBC, including the WSDL Definition and the annotation information for
+ // the impl class.
+ DescriptionBuilderComposite dbc = new DescriptionBuilderComposite(cc);
+
+ URL wsdlURL = DescriptionTestUtils.getWSDLURL(wsdlFileName);
+ Definition wsdlDefn = DescriptionTestUtils.createWSDLDefinition(wsdlURL);
+ assertNotNull(wsdlDefn);
+
+ WebServiceAnnot webServiceAnnot = WebServiceAnnot.createWebServiceAnnotImpl();
+ assertNotNull(webServiceAnnot);
+ webServiceAnnot.setWsdlLocation(wsdlLocation);
+ webServiceAnnot.setTargetNamespace(targetNamespace);
+ webServiceAnnot.setServiceName("EchoMessageService");
+ webServiceAnnot.setPortName("EchoMessagePort");
+
+ MethodDescriptionComposite mdc = new MethodDescriptionComposite();
+ mdc.setMethodName("echoMessage");
+ mdc.setReturnType("java.lang.String");
+
+ ParameterDescriptionComposite pdc1 = new ParameterDescriptionComposite();
+ pdc1.setParameterType("java.lang.String");
+
+ mdc.addParameterDescriptionComposite(pdc1);
+
+ dbc.addMethodDescriptionComposite(mdc);
+ dbc.setWebServiceAnnot(webServiceAnnot);
+ dbc.setClassName(BindingNSImpl.class.getName());
+ //dbc.setWsdlDefinition(wsdlDefn);
+ //System.out.println("DBCwithConfigContextTests setWsdlURL" );
+ dbc.setwsdlURL(wsdlURL);
+ //System.out.println("DBCwithConfigContextTests new HashMap" );
+
+ HashMap<String, DescriptionBuilderComposite> dbcMap =
+ new HashMap<String, DescriptionBuilderComposite>();
+ dbcMap.put(dbc.getClassName(), dbc);
+ //System.out.println("**** DescriptionFactory.createServiceDescriptionFromDBCMap-DBC-toString" +
+ // dbc.toString() + " toString-END" );
+ List<ServiceDescription> serviceDescList =
+ DescriptionFactory.createServiceDescriptionFromDBCMap(dbcMap, cc);
+ //System.out.println("**** DBCwithConfigContextTests tests:" + dbc.toString() +" toString-END" );
+ assertEquals(1, serviceDescList.size());
+ //System.out.println("DBCwithConfigContextTests get ServiceDescription" );
+ ServiceDescriptionWSDL sdw = (ServiceDescriptionWSDL)serviceDescList.get(0);
+ assertNotNull(sdw);
+
+ //System.out.println("DBCwithConfigContextTests ServiceDescriptionWSDL not null" );
+
+ WSDLWrapper w = sdw.getWSDLWrapper();
+ assertNotNull(w);
+ //System.out.println("DBCwithConfigContextTests WSDLWrapper not null" );
+
+ Definition d = w.getDefinition();
+ assertNotNull(d);
+ //System.out.println("DBCwithConfigContextTests Definition not null" );
+ assertTrue(d.toString().startsWith("org.apache.axis2.wsdl.util.WSDLWrapperReloadImpl") );
+
+
+ //System.out.println("d:" + d.getClass().getName() + "\n" + d.toString() ) ;
+
+ /*
+ EndpointDescription[] edArray = sd.getEndpointDescriptions();
+ assertNotNull(edArray);
+ assertEquals(1, edArray.length);
+ EndpointDescription ed = edArray[0];
+ assertNotNull(ed);
+
+ EndpointInterfaceDescription eid = ed.getEndpointInterfaceDescription();
+ assertNotNull(eid);
+
+ OperationDescription[] odArray = eid.getOperations();
+ assertNotNull(odArray);
+ assertEquals(1, odArray.length);
+ OperationDescription od = odArray[0];
+ assertNotNull(od);
+ assertEquals("http://org.apache.binding.ns", od.getBindingInputNamespace());
+ assertEquals("http://org.apache.binding.ns", od.getBindingOutputNamespace());
+ */
+ } catch (AxisFault e) {
+ fail("This should not fail with this " + e);
+ }
+ }
+
+
+ @WebService(serviceName = "EchoMessageService", portName = "EchoMessagePort", targetNamespace = "http://nonanonymous.complextype.test.org", wsdlLocation = "test-resources/wsdl/BindingNamespace.wsdl")
+ public class BindingNSImpl {
+ public String echoMessage(String arg) {
+ return arg;
+ }
+ }
+
+
+ @WebService(serviceName = "EchoMessageService", portName = "EchoMessagePort", targetNamespace = "http://nonanonymous.complextype.test.org", wsdlLocation = "test-resources/wsdl/BindingNamespaceDefaults.wsdl")
+ public class BindingNSDefaultsImpl {
+ public String echoMessage(String arg) {
+ return arg;
+ }
+ }
+
+}
Modified: webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImplTests.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImplTests.java?rev=628087&r1=628086&r2=628087&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImplTests.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/test/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImplTests.java Fri Feb 15 07:27:05 2008
@@ -157,7 +157,7 @@
assertNotNull(pn);
assertNotNull(tns);
QName portQName = new QName(tns, pn);
- List<ServiceDescription> sdList = DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(dbcMap);
+ List<ServiceDescription> sdList = DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(dbcMap, null);
assertNotNull(sdList);
assertEquals(sdList.size(), 1);
ServiceDescription sd = sdList.get(0);
@@ -193,7 +193,7 @@
assertNotNull(is);
HandlerChainsType hct = DescriptionUtils.loadHandlerChains(is, this.getClass().getClassLoader());
dbc.setHandlerChainsType(hct);
- List<ServiceDescription> sdList = DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(dbcMap);
+ List<ServiceDescription> sdList = DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(dbcMap, null);
assertNotNull(sdList);
assertTrue(sdList.size() > 0);
ServiceDescription sd = sdList.get(0);
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org