Author: thomas.diesler(a)jboss.com
Date: 2007-10-04 07:15:24 -0400 (Thu, 04 Oct 2007)
New Revision: 4675
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/core/ConfigProvider.java
stack/native/trunk/src/main/java/org/jboss/ws/core/StubExt.java
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java
stack/native/trunk/version.properties
Log:
partial commit
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/ConfigProvider.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/ConfigProvider.java 2007-10-04
11:13:08 UTC (rev 4674)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/ConfigProvider.java 2007-10-04
11:15:24 UTC (rev 4675)
@@ -50,4 +50,14 @@
* Set the port configuration name and file
*/
void setConfigName(String configName, String configFile);
+
+ /**
+ * Get the WS-Security configuration
+ */
+ String getSecurityConfig();
+
+ /**
+ * Set the WS-Security configuration
+ */
+ void setSecurityConfig(String securityConfig);
}
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/StubExt.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/StubExt.java 2007-10-04 11:13:08
UTC (rev 4674)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/StubExt.java 2007-10-04 11:15:24
UTC (rev 4675)
@@ -126,14 +126,4 @@
* Creates a new empty AttachmentPart object.
*/
AttachmentPart createAttachmentPart();
-
- /**
- * Get the WS-Security configuration
- */
- String getSecurityConfig();
-
- /**
- * Set the WS-Security configuration
- */
- void setSecurityConfig(String securityConfig);
}
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java 2007-10-04
11:13:08 UTC (rev 4674)
+++
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java 2007-10-04
11:15:24 UTC (rev 4675)
@@ -29,36 +29,40 @@
import java.util.concurrent.Future;
import javax.xml.bind.JAXBContext;
+import javax.xml.namespace.QName;
import javax.xml.soap.MimeHeaders;
-import javax.xml.soap.SOAPMessage;
+import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPFactory;
import javax.xml.soap.SOAPFault;
-import javax.xml.soap.SOAPException;
+import javax.xml.soap.SOAPMessage;
import javax.xml.transform.Source;
import javax.xml.ws.AsyncHandler;
import javax.xml.ws.Binding;
+import javax.xml.ws.Binding21;
import javax.xml.ws.BindingProvider;
import javax.xml.ws.Dispatch;
import javax.xml.ws.EndpointReference;
import javax.xml.ws.Response;
import javax.xml.ws.WebServiceException;
-import javax.xml.ws.Binding21;
import javax.xml.ws.Service.Mode;
import javax.xml.ws.http.HTTPBinding;
import javax.xml.ws.soap.SOAPFaultException;
-import javax.xml.namespace.QName;
import org.jboss.logging.Logger;
import org.jboss.util.NotImplementedException;
+import org.jboss.ws.WSException;
+import org.jboss.ws.core.ConfigProvider;
import org.jboss.ws.core.MessageAbstraction;
-import org.jboss.ws.core.ConfigProvider;
-import org.jboss.ws.core.soap.SOAPFaultImpl;
import org.jboss.ws.core.client.HTTPRemotingConnection;
import org.jboss.ws.core.client.RemotingConnection;
import org.jboss.ws.core.client.SOAPRemotingConnection;
import org.jboss.ws.core.jaxws.binding.BindingProviderImpl;
+import org.jboss.ws.metadata.config.ConfigurationProvider;
import org.jboss.ws.metadata.umdm.EndpointMetaData;
-import org.jboss.ws.metadata.config.ConfigurationProvider;
+import org.jboss.ws.metadata.umdm.ServiceMetaData;
+import org.jboss.ws.metadata.wsse.WSSecurityConfigFactory;
+import org.jboss.ws.metadata.wsse.WSSecurityConfiguration;
+import org.jboss.wsf.spi.deployment.UnifiedVirtualFile;
/**
* The Dispatch interface provides support for the dynamic invocation of a service
endpoint operations.
@@ -67,7 +71,7 @@
* @author Thomas.Diesler(a)jboss.com
* @since 04-Jul-2006
*/
-public class DispatchImpl<T> implements Dispatch<T>
+public class DispatchImpl<T> implements Dispatch<T>, ConfigProvider
{
// provide logging
private final Logger log = Logger.getLogger(DispatchImpl.class);
@@ -76,6 +80,7 @@
private EndpointMetaData epMetaData;
private JAXBContext jaxbContext;
private ExecutorService executor;
+ private String securityConfig;
private Class type;
private Mode mode;
@@ -379,4 +384,53 @@
{
throw new NotImplementedException();
}
+
+ public String getConfigFile()
+ {
+ return epMetaData.getConfigFile();
+ }
+
+ public String getConfigName()
+ {
+ return epMetaData.getConfigName();
+ }
+
+ public void setConfigName(String configName)
+ {
+ epMetaData.setConfigName(configName);
+ }
+
+ public void setConfigName(String configName, String configFile)
+ {
+ epMetaData.setConfigName(configName, configFile);
+ }
+
+ public String getSecurityConfig()
+ {
+ return securityConfig;
+ }
+
+ public void setSecurityConfig(String securityConfig)
+ {
+ this.securityConfig = securityConfig;
+
+ if (securityConfig != null)
+ {
+ ServiceMetaData serviceMetaData = epMetaData.getServiceMetaData();
+ if (serviceMetaData.getSecurityConfiguration() == null)
+ {
+ try
+ {
+ WSSecurityConfigFactory wsseConfFactory =
WSSecurityConfigFactory.newInstance();
+ UnifiedVirtualFile vfsRoot =
serviceMetaData.getUnifiedMetaData().getRootFile();
+ WSSecurityConfiguration config =
wsseConfFactory.createConfiguration(vfsRoot, securityConfig);
+ serviceMetaData.setSecurityConfiguration(config);
+ }
+ catch (IOException ex)
+ {
+ WSException.rethrow("Cannot set security config", ex);
+ }
+ }
+ }
+ }
}
Modified: stack/native/trunk/version.properties
===================================================================
--- stack/native/trunk/version.properties 2007-10-04 11:13:08 UTC (rev 4674)
+++ stack/native/trunk/version.properties 2007-10-04 11:15:24 UTC (rev 4675)
@@ -29,15 +29,14 @@
jbossws-framework=2.0.1.GA
jbossws-jboss40=2.0.1.GA
jbossws-jboss42=2.0.1.GA
-jbossws-jboss50=2.0.1.GA
# JBossAS-5.0
jboss-jbossxb-jboss50=2.0.0.CR4
jboss-remoting-jboss50=2.2.2.SP1
# JBossAS-4.2
-jboss-jbossxb-jboss42=1.0.0.CR11
-jboss-remoting-jboss42=2.2.1.GA
+jboss-jbossxb-jboss42=1.0.0.GA
+jboss-remoting-jboss42=2.2.2.SP1
# JBossAS-4.0
jboss-jbossxb-jboss40=1.0.0.CR11