[prev in list] [next in list] [prev in thread] [next in thread] 

List:       muse-commits
Subject:    svn commit: r450140 - in /webservices/muse/trunk/modules:
From:       jhawkins () apache ! org
Date:       2006-09-26 18:28:02
Message-ID: 20060926182802.AD7451A981A () eris ! apache ! org
[Download RAW message or body]

Author: jhawkins
Date: Tue Sep 26 11:27:59 2006
New Revision: 450140

URL: http://svn.apache.org/viewvc?view=rev&rev=450140
Log:
Updates to prepate for move to Axis2 1.1 (whenever it gets here).

Modified:
    webservices/muse/trunk/modules/muse-osgi-core/resources/META-INF/MANIFEST.MF
    webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/ResourceManagementProvider.java
  webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/descriptor/OSGiDeploymentDescriptor.java
  webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/routing/OSGiResourceRouter.java
  webservices/muse/trunk/modules/muse-osgi-soa-axis2/resources/META-INF/MANIFEST.MF
    webservices/muse/trunk/modules/muse-osgi-soa-axis2/src/org/apache/muse/core/platform/osgi/axis2/internal/Axis2ResourceManagementService.java
  webservices/muse/trunk/modules/muse-osgi-soa-axis2/src/org/apache/muse/core/platform/osgi/axis2/internal/ResourceManagementAdminServiceImpl.java
  webservices/muse/trunk/modules/muse-osgi-soa-core/src/org/apache/muse/osgi/soa/core/SOAPProvider.java
  webservices/muse/trunk/modules/muse-util/src/org/apache/muse/util/ReflectUtils.java

Modified: webservices/muse/trunk/modules/muse-osgi-core/resources/META-INF/MANIFEST.MF
                
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-osgi-core/resources/META-INF/MANIFEST.MF?view=diff&rev=450140&r1=450139&r2=450140
 ==============================================================================
--- webservices/muse/trunk/modules/muse-osgi-core/resources/META-INF/MANIFEST.MF \
                (original)
+++ webservices/muse/trunk/modules/muse-osgi-core/resources/META-INF/MANIFEST.MF Tue \
Sep 26 11:27:59 2006 @@ -1,26 +1,26 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Apache Muse Core OSGi Plug-in
-Bundle-SymbolicName: muse.osgi.core
-Bundle-Version: 1.0.0
-Bundle-Activator: org.apache.muse.core.platform.osgi.Activator
-Bundle-Vendor: Apache
-Bundle-Localization: plugin
-Import-Package: javax.servlet;version="2.3.0",
- javax.servlet.http;version="2.3.0",
- javax.wsdl,
- javax.wsdl.extensions,
- javax.wsdl.factory,
- javax.wsdl.xml,
- javax.xml.soap,
- org.osgi.framework;version="1.3.0",
- org.osgi.util.tracker;version="1.3.1",
- org.w3c.dom,
- javax.xml.namespace
-Require-Bundle: muse.core,
- muse.util.all,
- muse.wsa.soap
-Export-Package: org.apache.muse.core.platform.osgi,
- org.apache.muse.core.platform.osgi.descriptor,
- org.apache.muse.core.platform.osgi.routing,
- org.apache.muse.core.platform.osgi.util
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Osgi Plug-in
+Bundle-SymbolicName: muse.osgi.core
+Bundle-Version: 1.0.0
+Bundle-Activator: org.apache.muse.core.platform.osgi.Activator
+Bundle-Vendor: Apache
+Bundle-Localization: plugin
+Import-Package: javax.servlet;version="2.3.0",
+ javax.servlet.http;version="2.3.0",
+ javax.wsdl,
+ javax.wsdl.extensions,
+ javax.wsdl.factory,
+ javax.wsdl.xml,
+ javax.xml.soap,
+ org.osgi.framework;version="1.3.0",
+ org.osgi.util.tracker;version="1.3.1",
+ org.w3c.dom
+Require-Bundle: muse.core,
+ muse.util.all,
+ muse.wsa.soap
+Export-Package: org.apache.muse.core.platform.osgi,
+ org.apache.muse.core.platform.osgi.descriptor,
+ org.apache.muse.core.platform.osgi.routing,
+ org.apache.muse.core.platform.osgi.util
+Bundle-ClassPath: .

Modified: webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/ResourceManagementProvider.java
                
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-osgi-core/src/or \
g/apache/muse/core/platform/osgi/ResourceManagementProvider.java?view=diff&rev=450140&r1=450139&r2=450140
 ==============================================================================
--- webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/ResourceManagementProvider.java \
                (original)
+++ webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/ResourceManagementProvider.java \
Tue Sep 26 11:27:59 2006 @@ -17,6 +17,8 @@
 
 package org.apache.muse.core.platform.osgi;
 
+import org.osgi.framework.Bundle;
+
 
 /**
  * ResourceManagementProvider is an interface for Muse application deployment \
functionality. @@ -41,7 +43,7 @@
 	 * @param homeName
 	 * @throws Exception
 	 */
-	public void deployManagementService(String contextName, String homeName) throws \
Exception; +	public void deployManagementService(Bundle bundle, String contextName, \
String homeName, String wsdlPath) throws Exception;  
 	/**
 	 * deploys a Management Endpoint (corresponding a resource type from a muse.xml \
file) into @@ -50,6 +52,6 @@
 	 * @param homeName
 	 * @throws Exception
 	 */
-	public void deployManagementService(String homeName) throws Exception;
+	public void deployManagementService(Bundle bundle, String homeName, String \
wsdlPath) throws Exception;  
 }

Modified: webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/descriptor/OSGiDeploymentDescriptor.java
                
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-osgi-core/src/or \
g/apache/muse/core/platform/osgi/descriptor/OSGiDeploymentDescriptor.java?view=diff&rev=450140&r1=450139&r2=450140
 ==============================================================================
--- webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/descriptor/OSGiDeploymentDescriptor.java \
                (original)
+++ webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/descriptor/OSGiDeploymentDescriptor.java \
Tue Sep 26 11:27:59 2006 @@ -122,6 +122,32 @@
 		}
 		return contextPaths;
 	}
+	
+	
+	public String getWsdlPathForContext(Document xml, String context) throws SoapFault \
{ +		if (xml == null)
+			throw new NullPointerException(_MESSAGES
+					.get("NullDescriptorDocument"));
+
+		if (context == null) return null;
+
+		Element root = XmlUtils.getElement(xml, DescriptorConstants.MUSE_QNAME);
+
+		Element[] resourceXML = XmlUtils.getElements(root,
+				DescriptorConstants.RESOURCE_TYPE_QNAME);
+		if(resourceXML == null) return null;
+		QName qname = DescriptorConstants.CONTEXT_PATH_QNAME;
+		for(int i=0;i<resourceXML.length;i++){
+			String path = XmlUtils.getElementText(resourceXML[i], qname);
+			if(context.equals(path)){
+				Element wsdlElement = XmlUtils.getElement(resourceXML[i], \
DescriptorConstants.WSDL_QNAME); +				if(wsdlElement != null)
+					return XmlUtils.getElementText(wsdlElement,DescriptorConstants.WSDL_FILE_QNAME);
 +				break;
+			}
+		}
+		return null;
+	}
 
 	/**
 	 * loads the descriptor from the muse.xml document. 

Modified: webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/routing/OSGiResourceRouter.java
                
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-osgi-core/src/or \
g/apache/muse/core/platform/osgi/routing/OSGiResourceRouter.java?view=diff&rev=450140&r1=450139&r2=450140
 ==============================================================================
--- webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/routing/OSGiResourceRouter.java \
                (original)
+++ webservices/muse/trunk/modules/muse-osgi-core/src/org/apache/muse/core/platform/osgi/routing/OSGiResourceRouter.java \
Tue Sep 26 11:27:59 2006 @@ -30,6 +30,7 @@
 import org.apache.muse.core.descriptor.ResourceDefinition;
 import org.apache.muse.core.descriptor.RouterDefinition;
 import org.apache.muse.core.descriptor.SerializerDefinition;
+import org.apache.muse.core.descriptor.WsdlConfig;
 import org.apache.muse.core.platform.osgi.internal.OSGiResourceManager;
 import org.apache.muse.core.platform.osgi.OSGiEnvironment;
 import org.apache.muse.core.platform.osgi.OSGiEnvironmentImpl;
@@ -172,6 +173,24 @@
 		}
 	}
 	
+	private class ContextInfo {
+		public ContextInfo(String contextPath, String wsdlPath){
+			this.contextPath = contextPath;
+			this.wsdlPath = wsdlPath;
+		}
+		
+		public String getContextPath(){
+			return contextPath;
+		}
+		
+		private String getWsdlPath(){
+			return wsdlPath;
+		}
+		
+		private String contextPath;
+		private String wsdlPath;
+	}
+	
 	private Collection getContextPathsForBundle(Bundle bundle, String target) {
 		ArrayList list = new ArrayList();
 		OSGiEnvironment env = new OSGiEnvironmentImpl(false);
@@ -181,16 +200,16 @@
 			Document ddXML = env.getDocument(target);
 			OSGiDeploymentDescriptor dd = new OSGiDeploymentDescriptor();
 			Collection resourceDefs = dd.loadContextPaths(ddXML, env);
-			Iterator defs = resourceDefs.iterator();
+			Iterator paths = resourceDefs.iterator();
 			
 			String contextPath = (String) bundle.getHeaders().get(
 					OSGiPlatformConstants.MANAGEMENT_CONTEXT_HEADER);
-
-			while (defs.hasNext()) {
-				String context = (String) defs.next(); 
+			while (paths.hasNext()) {
+				String context = (String) paths.next(); 
+				String wsdlPath = dd.getWsdlPathForContext(ddXML, context);
 				//FIXME - this will work for Axis - not sure about others
 				contextToBundleMap.put(contextPath + "/services/" + context, bundle);
-				list.add(context);
+				list.add(new ContextInfo(context, wsdlPath));
 			}
 
 			this.bundleToContextMap.put(bundle, new ArrayList(list));
@@ -206,12 +225,14 @@
 		Collection contextPaths = getContextPathsForBundle(bundle, target);
 		Iterator i = contextPaths.iterator();
 		while (i.hasNext()) {
-			String path = (String) i.next();
+			ContextInfo info = (ContextInfo)i.next();
+			String path = info.getContextPath();
+			String wsdl = info.getWsdlPath();
 			String trimmedPath = path;
 			if (trimmedPath.startsWith("/"))
 				trimmedPath = trimmedPath.substring(1);
 			try {
-				provider.deployManagementService(contextName, trimmedPath);
+				provider.deployManagementService(bundle, contextName, trimmedPath, wsdl);
 				BundleRootHelper.registerContext(bundle,contextName);
 			} catch (Exception e) {
 				// TODO requeue?
@@ -339,6 +360,7 @@
 			this.addResourceDefinitions(bundle, resourceDefs);
 
 			if(delegate != null){
+				System.out.println("Registering delegate" + \
delegate.getClass().getCanonicalName() + " for bundle " + bundle.getSymbolicName());  \
delegateMap.put(bundle, delegate);  Iterator iter = resourceDefs.iterator();
 				while(iter.hasNext()){

Modified: webservices/muse/trunk/modules/muse-osgi-soa-axis2/resources/META-INF/MANIFEST.MF
                
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-osgi-soa-axis2/resources/META-INF/MANIFEST.MF?view=diff&rev=450140&r1=450139&r2=450140
 ==============================================================================
--- webservices/muse/trunk/modules/muse-osgi-soa-axis2/resources/META-INF/MANIFEST.MF \
                (original)
+++ webservices/muse/trunk/modules/muse-osgi-soa-axis2/resources/META-INF/MANIFEST.MF \
Tue Sep 26 11:27:59 2006 @@ -1,67 +1,25 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Apache Muse Axis2-on-OSGi Plug-in
-Bundle-SymbolicName: muse.osgi.soa.axis2
-Bundle-Version: 1.0.0
-Bundle-Activator: org.apache.muse.core.platform.osgi.axis2.Activator
-Bundle-Localization: plugin
-Import-Package: javax.servlet,
- javax.servlet.http,
- javax.wsdl,
- javax.wsdl.extensions,
- javax.xml.rpc,
- javax.xml.rpc.handler,
- javax.xml.rpc.handler.soap,
- javax.xml.rpc.server,
- javax.xml.rpc.soap,
- javax.xml.soap,
- javax.xml.stream,
- javax.xml.stream.events,
- javax.xml.stream.util,
- org.apache.axiom.attachments,
- org.apache.axiom.attachments.utils,
- org.apache.axiom.om,
- org.apache.axiom.om.impl,
- org.apache.axiom.om.impl.builder,
- org.apache.axiom.om.impl.dom,
- org.apache.axiom.om.impl.dom.factory,
- org.apache.axiom.om.impl.dom.jaxp,
- org.apache.axiom.om.impl.exception,
- org.apache.axiom.om.impl.llom,
- org.apache.axiom.om.impl.llom.factory,
- org.apache.axiom.om.impl.llom.util,
- org.apache.axiom.om.impl.mtom,
- org.apache.axiom.om.impl.serialize,
- org.apache.axiom.om.impl.traverse,
- org.apache.axiom.om.impl.util,
- org.apache.axiom.om.util,
- org.apache.axiom.om.xpath,
- org.apache.axiom.soap,
- org.apache.axiom.soap.impl.builder,
- org.apache.axiom.soap.impl.dom,
- org.apache.axiom.soap.impl.dom.factory,
- org.apache.axiom.soap.impl.dom.soap11,
- org.apache.axiom.soap.impl.dom.soap12,
- org.apache.axiom.soap.impl.llom,
- org.apache.axiom.soap.impl.llom.soap11,
- org.apache.axiom.soap.impl.llom.soap12,
- org.apache.axis2,
- org.apache.axis2.addressing,
- org.apache.axis2.context,
- org.apache.axis2.deployment,
- org.apache.axis2.description,
- org.apache.axis2.engine,
- org.apache.axis2.i18n,
- org.apache.axis2.receivers,
- org.apache.xml.serialize,
- org.osgi.framework;version="1.3.0",
- javax.xml.namespace, 
- com.ctc.wstx.stax
-Require-Bundle: muse.core,
- muse.osgi.core,
- muse.wsa.soap,
- muse.util.all,
- muse.osgi.soa.core
-Bundle-ClassPath: .,
- muse-platform-axis2-2.0.0.jar,
- wstx-asl-2.9.3.jar
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Axis2 Plug-in
+Bundle-SymbolicName: muse.osgi.soa.axis2
+Bundle-Version: 1.0.0
+Bundle-Activator: org.apache.muse.core.platform.osgi.axis2.Activator
+Bundle-Localization: plugin
+Import-Package: javax.servlet;version="2.3.0",
+ javax.servlet.http;version="2.3.0",
+ javax.servlet.resources;version="2.3.0",
+ javax.wsdl,
+ javax.wsdl.extensions,
+ javax.wsdl.extensions.http,
+ javax.wsdl.factory,
+ javax.wsdl.xml,
+ javax.xml.soap,
+ org.osgi.framework;version="1.3.0"
+Require-Bundle: muse.osgi.soa.core,
+ muse.osgi.core,
+ muse.core,
+ muse.wsa.soap,
+ muse.util.all,
+ org.apache.axis2
+Bundle-ClassPath: .,
+ lib/muse-platform-axis2-2.0.0-SNAPSHOT.jar

Modified: webservices/muse/trunk/modules/muse-osgi-soa-axis2/src/org/apache/muse/core/platform/osgi/axis2/internal/Axis2ResourceManagementService.java
                
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-osgi-soa-axis2/s \
rc/org/apache/muse/core/platform/osgi/axis2/internal/Axis2ResourceManagementService.java?view=diff&rev=450140&r1=450139&r2=450140
 ==============================================================================
--- webservices/muse/trunk/modules/muse-osgi-soa-axis2/src/org/apache/muse/core/platform/osgi/axis2/internal/Axis2ResourceManagementService.java \
                (original)
+++ webservices/muse/trunk/modules/muse-osgi-soa-axis2/src/org/apache/muse/core/platform/osgi/axis2/internal/Axis2ResourceManagementService.java \
Tue Sep 26 11:27:59 2006 @@ -17,11 +17,23 @@
 
 package org.apache.muse.core.platform.osgi.axis2.internal;
 
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.URL;
+
+import javax.wsdl.Definition;
+import javax.wsdl.WSDLException;
+import javax.wsdl.factory.WSDLFactory;
+import javax.wsdl.xml.WSDLWriter;
 import javax.xml.namespace.QName;
 
+import org.apache.axis2.AxisFault;
 import org.apache.axis2.description.AxisOperation;
 import org.apache.axis2.description.InOutAxisOperation;
 import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.Parameter;
+import org.apache.axis2.wsdl.WSDLConstants;
+import org.osgi.framework.Bundle;
 
 /**
  * Axis2ResourceManagementService represents the Muse <code>IsolationLayer</code> to \
the Axis runtime.   @@ -38,6 +50,8 @@
 public class Axis2ResourceManagementService extends AxisService {
 
 	private AxisOperation isolationLayerOperation;
+	private String wsdlPath;
+	private Bundle bundle;
 
 	/**
 	 * Constructs the service and initializes an operation for the 
@@ -65,7 +79,39 @@
       }
 
       return axisOperation;
-  }
-
-
+    }
+    
+    public void setWSDLPath(String wsdlPath){
+    	this.wsdlPath = wsdlPath;
+    }
+    
+    public void setBundle(Bundle bundle){
+    	this.bundle = bundle;
+    }
+    
+    public void printWSDL(OutputStream out, String requestIP, String servicePath) \
throws AxisFault { +    	if(wsdlPath != null && bundle != null){
+    		try {
+    			URL wsdlURL = bundle.getResource(wsdlPath);
+    			if(wsdlURL != null){
+    				InputStream stream = wsdlURL.openStream();
+    				byte buffer[] = new byte[512];
+    				int read = 0;
+    				while((read = stream.read(buffer)) > 0){
+    					out.write(buffer, 0, read);
+    				}
+    			}
+    		} catch(Throwable t){
+    			//prints an error message...
+    			//TODO - uncomment once we get a real Axis2 1.1
+    			//super.printWSDL(out, requestIP, servicePath);
+    			throw new AxisFault("Wsdl not found for " + servicePath);
+    		}
+    	}else {
+			//TODO - uncomment once we get a real Axis2 1.1
+			//super.printWSDL(out, requestIP, servicePath);
+			throw new AxisFault("Wsdl not found for " + servicePath);
+    	}
+    }
+  
 }

Modified: webservices/muse/trunk/modules/muse-osgi-soa-axis2/src/org/apache/muse/core/platform/osgi/axis2/internal/ResourceManagementAdminServiceImpl.java
                
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-osgi-soa-axis2/s \
rc/org/apache/muse/core/platform/osgi/axis2/internal/ResourceManagementAdminServiceImpl.java?view=diff&rev=450140&r1=450139&r2=450140
 ==============================================================================
--- webservices/muse/trunk/modules/muse-osgi-soa-axis2/src/org/apache/muse/core/platform/osgi/axis2/internal/ResourceManagementAdminServiceImpl.java \
                (original)
+++ webservices/muse/trunk/modules/muse-osgi-soa-axis2/src/org/apache/muse/core/platform/osgi/axis2/internal/ResourceManagementAdminServiceImpl.java \
Tue Sep 26 11:27:59 2006 @@ -23,10 +23,13 @@
 import javax.xml.soap.SOAPException;
 
 import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.engine.AxisConfiguration;
 import org.apache.muse.core.platform.osgi.ResourceManagementProvider;
 import org.apache.muse.osgi.soa.core.SOAPProvider;
+import org.apache.muse.osgi.soa.core.web.WebApp;
 import org.osgi.framework.BundleContext;
+import org.osgi.framework.Bundle;
 
 /**
  *
@@ -43,6 +46,7 @@
 	public static final String DEFAULT_CONTEXT = "management";
 
 	private BundleContext context;
+	private Bundle bundle;
 	private SOAPProvider provider;
 
 	public ResourceManagementAdminServiceImpl(BundleContext context, SOAPProvider \
provider){ @@ -51,15 +55,16 @@
 	}
 
 
-	public void deployManagementService(String homeName) throws SOAPException {
-		deployManagementService(DEFAULT_CONTEXT, homeName);
+	public void deployManagementService(Bundle bundle, String homeName, String \
wsdlPath) throws SOAPException { +		deployManagementService(bundle, DEFAULT_CONTEXT, \
homeName);  }
 
 
-	public void deployManagementService(String contextPath, String srvName) throws \
SOAPException { +	public void deployManagementService(Bundle bundle, String \
contextPath, String srvName, String wsdlPath) throws SOAPException { +		WebApp webApp \
= null;  if (contextPath != null) {
 			try {
-				provider.getWebApp(contextPath, true);
+				webApp = provider.getWebApp(bundle, contextPath, true);
 			} catch (Exception e) {
 				// TODO Auto-generated catch block
 				e.printStackTrace();
@@ -68,10 +73,12 @@
 
 		// rename all references to service name
 		try {
-			Object obj = provider.getProviderDeployer();
-			AxisConfiguration axisConfig = (AxisConfiguration)obj;
+			ConfigurationContext context = \
(ConfigurationContext)provider.getProviderDeployer(webApp); +			AxisConfiguration \
axisConfig = context.getAxisConfiguration();  Axis2ResourceManagementService service \
= new Axis2ResourceManagementService();  service.setName(srvName);
+			service.setWSDLPath(wsdlPath);
+			service.setBundle(bundle);
 			try {
 				service.setFileName(new URL("file",contextPath, srvName));
 			} catch (MalformedURLException e) {

Modified: webservices/muse/trunk/modules/muse-osgi-soa-core/src/org/apache/muse/osgi/soa/core/SOAPProvider.java
                
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-osgi-soa-core/sr \
c/org/apache/muse/osgi/soa/core/SOAPProvider.java?view=diff&rev=450140&r1=450139&r2=450140
 ==============================================================================
--- webservices/muse/trunk/modules/muse-osgi-soa-core/src/org/apache/muse/osgi/soa/core/SOAPProvider.java \
                (original)
+++ webservices/muse/trunk/modules/muse-osgi-soa-core/src/org/apache/muse/osgi/soa/core/SOAPProvider.java \
Tue Sep 26 11:27:59 2006 @@ -56,7 +56,7 @@
 	static final String PROVIDER_MINOR_VERSION = "MinorVersion";
 
 	static final String RPC_BINDING_TYPE = "RPC";
-	static final String MESSAGE_BINDING_TYPE = "MSG";
+	static final String DOCUMENT_BINDING_TYPE = "DOC";
 	
 	/**
 	 * Getter method for the implementation's provider name. This name should be the \
same @@ -76,6 +76,7 @@
 
 	Object getProviderEngine();
 	Object getProviderDeployer();
+	Object getProviderDeployer(WebApp webApp);
 
 	/**
 	 * Deploys an Object as a WebService using the implementation's default binding \
type. @@ -87,7 +88,7 @@
 	 * @param srvObject the actual implementation
 	 * @throws Exception
 	 */
-	void deployService(String srvName, Class srvClass, Object srvObject ) throws \
Exception; +	void deployService(String srvName, Class srvClass, Object srvObject, \
String handlerChain ) throws Exception;  
 	/**
 	 * Deploys an Object as a WebService using a specified binding type
@@ -100,7 +101,7 @@
 	 * @param srvObject the actual implementation
 	 * @throws Exception
 	 */
-	void deployService(String srvName, String bindingType, Class srvClass, Object \
srvObject) throws Exception; +	void deployService(String srvName, String bindingType, \
Class srvClass, Object srvObject, String handlerChain) throws Exception;  
 	/**
 	 * Deploys an Object as a WebService using the provider's default binding type.
@@ -115,7 +116,7 @@
 	 * 
 	 * @see org.apache.muse.osgi.soa.core.web.WebApp
 	 */
-	void deployService(WebApp webApp, String srvName, Class srvClass, Object srvObject \
) throws Exception; +	void deployService(WebApp webApp, String srvName, Class \
srvClass, Object srvObject, String handlerChain) throws Exception;  
 	/**
 	 * Deploys an Object as a WebService using a specified binding type
@@ -131,42 +132,31 @@
 	 * 
 	 * @see org.apache.muse.osgi.soa.core.web.WebApp
 	 */
-	void deployService(WebApp webApp, String srvName, String bindingType, Class \
srvClass, Object srvObject) throws Exception; +	void deployService(WebApp webApp, \
String srvName, String bindingType, Class srvClass, Object srvObject, String \
handlerChain) throws Exception;  
-	/**
-	 * Utility method for allowing the implementation to deploy its own internal \
                artifacts. 
-	 * 
-	 * @param bundle the <code>Bundle</code> containing the artifact
-	 * @param artifact the name of the artifact. This is typically the name of a \
                resource containing
-	 *                 a descriptor whos format is known to the implementation
-	 * @throws Exception
-	 */
-	void deployBundleArtifact(Bundle bundle, String artifact) throws Exception;
+	void undeployService(String srvName, Class srvClass) throws Exception;
+	
+	void undeployService(WebApp webApp, String srvName, Class srvClass) throws \
Exception;  
 	/**
-	 * Utility method for allowing the implementation to search for and deploy 
-	 * its own internal artifacts. 
+	 * Gets a web application from the provider for the given context path.
 	 * 
-	 * @param bundle the <code>Bundle</code> containing the artifacts
+	 * @param contextPath the context path of the desired WebApp
+	 * @param create if <code>true</code>, create the WebApp if it does not exits.
+	 * @return return the WebApp
 	 * @throws Exception
 	 */
-	void deployBundleArtifacts(Bundle bundle) throws Exception;
-
-	void undeployService(String srvName, Class srvClass, Object srvObject ) throws \
                Exception;
-	void undeployBundleArtifact(Bundle bundle, String artifact) throws Exception;
-	void undeployBundleArtifacts(Bundle bundle) throws Exception;
-
-	void setClassResolver(String className, Bundle bundle);
-	void setClassInstance(Bundle bundle, String className, Object instance);
+	public WebApp getWebApp(String contextPath, boolean create) throws Exception;
 
 	/**
-	 * Gets a web application from the provider for the given context path.
+	 * Gets a web application from the provider for the given context path, using 
+	 * the provided bundle as the location for the engine's configuration information
 	 * 
 	 * @param contextPath the context path of the desired WebApp
 	 * @param create if <code>true</code>, create the WebApp if it does not exits.
 	 * @return return the WebApp
 	 * @throws Exception
 	 */
-	public WebApp getWebApp(String contextPath, boolean create) throws Exception;
+	public WebApp getWebApp(Bundle bundle, String contextPath, boolean create) throws \
Exception;  
 }

Modified: webservices/muse/trunk/modules/muse-util/src/org/apache/muse/util/ReflectUtils.java
                
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-util/src/org/apache/muse/util/ReflectUtils.java?view=diff&rev=450140&r1=450139&r2=450140
 ==============================================================================
--- webservices/muse/trunk/modules/muse-util/src/org/apache/muse/util/ReflectUtils.java \
                (original)
+++ webservices/muse/trunk/modules/muse-util/src/org/apache/muse/util/ReflectUtils.java \
Tue Sep 26 11:27:59 2006 @@ -187,8 +187,10 @@
             //
             // if it failed, try the default loader, if applicable
             //
-            if (_helper != null)
-                return _helper.getClass(className);
+            if (_helper != null){
+                Class clzz = _helper.getClass(className);
+                if(clzz != null) return clzz;
+            }
             
             if (classLoader != _DEFAULT_CLASS_LOADER)
             {



---------------------------------------------------------------------
To unsubscribe, e-mail: muse-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: muse-commits-help@ws.apache.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic