 .../webservices/publish/EndpointPublisherImpl.java |   11 +++++++----
 .../publish/WSEndpointDeploymentUnit.java          |    9 +++++++++
 .../service/EndpointPublishService.java            |    2 +-
 3 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/webservices/server-integration/src/main/java/org/jboss/as/webservices/publish/EndpointPublisherImpl.java b/webservices/server-integration/src/main/java/org/jboss/as/webservices/publish/EndpointPublisherImpl.java
index 6f7a2b0..8a32745 100644
--- a/webservices/server-integration/src/main/java/org/jboss/as/webservices/publish/EndpointPublisherImpl.java
+++ b/webservices/server-integration/src/main/java/org/jboss/as/webservices/publish/EndpointPublisherImpl.java
@@ -53,6 +53,7 @@ import org.jboss.wsf.spi.deployment.DeploymentAspectManager;
 import org.jboss.wsf.spi.deployment.Endpoint;
 import org.jboss.wsf.spi.deployment.EndpointState;
 import org.jboss.wsf.spi.deployment.WSFServlet;
+import org.jboss.wsf.spi.metadata.webservices.JBossWebservicesMetaData;
 import org.jboss.wsf.spi.metadata.webservices.WebservicesMetaData;
 import org.jboss.wsf.spi.publish.Context;
 import org.jboss.wsf.spi.publish.EndpointPublisher;
@@ -80,18 +81,19 @@ public final class EndpointPublisherImpl implements EndpointPublisher {
 
     @Override
     public Context publish(String context, ClassLoader loader, Map<String, String> urlPatternToClassNameMap) throws Exception {
-        return publish(getBaseTarget(), context, loader, urlPatternToClassNameMap, null, null);
+        return publish(getBaseTarget(), context, loader, urlPatternToClassNameMap, null, null, null);
     }
 
     @Override
     public Context publish(String context, ClassLoader loader, Map<String, String> urlPatternToClassNameMap, WebservicesMetaData metadata) throws Exception {
-        return publish(getBaseTarget(), context, loader, urlPatternToClassNameMap, null, metadata);
+        return publish(getBaseTarget(), context, loader, urlPatternToClassNameMap, null, metadata, null);
     }
 
+    // @Override - This requires change in the SPI interface
     public Context publish(ServiceTarget target, String context, ClassLoader loader,
-            Map<String, String> urlPatternToClassNameMap, JBossWebMetaData jbwmd, WebservicesMetaData metadata)
+            Map<String, String> urlPatternToClassNameMap, JBossWebMetaData jbwmd, WebservicesMetaData metadata, JBossWebservicesMetaData jbwsMetadata)
             throws Exception {
-        WSEndpointDeploymentUnit unit = new WSEndpointDeploymentUnit(loader, context, urlPatternToClassNameMap, jbwmd, metadata);
+        WSEndpointDeploymentUnit unit = new WSEndpointDeploymentUnit(loader, context, urlPatternToClassNameMap, jbwmd, metadata, jbwsMetadata);
         return new Context(context, publish(target, unit));
     }
 
@@ -104,6 +106,7 @@ public final class EndpointPublisherImpl implements EndpointPublisher {
      */
     public List<Endpoint> publish(ServiceTarget target, WSEndpointDeploymentUnit unit) throws Exception {
         List<DeploymentAspect> aspects = getDeploymentAspects();
+
         ClassLoader origClassLoader = SecurityActions.getContextClassLoader();
         Deployment dep = null;
         try {
diff --git a/webservices/server-integration/src/main/java/org/jboss/as/webservices/publish/WSEndpointDeploymentUnit.java b/webservices/server-integration/src/main/java/org/jboss/as/webservices/publish/WSEndpointDeploymentUnit.java
index defde71..14cbd75 100644
--- a/webservices/server-integration/src/main/java/org/jboss/as/webservices/publish/WSEndpointDeploymentUnit.java
+++ b/webservices/server-integration/src/main/java/org/jboss/as/webservices/publish/WSEndpointDeploymentUnit.java
@@ -35,6 +35,7 @@ import org.jboss.dmr.ModelNode;
 import org.jboss.metadata.web.jboss.JBossWebMetaData;
 import org.jboss.msc.service.ServiceName;
 import org.jboss.msc.service.ServiceRegistry;
+import org.jboss.wsf.spi.metadata.webservices.JBossWebservicesMetaData;
 import org.jboss.wsf.spi.metadata.webservices.WebservicesMetaData;
 
 public class WSEndpointDeploymentUnit extends SimpleAttachable implements DeploymentUnit {
@@ -47,6 +48,11 @@ public class WSEndpointDeploymentUnit extends SimpleAttachable implements Deploy
 
     public WSEndpointDeploymentUnit(ClassLoader loader, String context, Map<String, String> urlPatternToClassName,
             JBossWebMetaData jbossWebMetaData, WebservicesMetaData metadata) {
+        this(loader, context, urlPatternToClassName, jbossWebMetaData, metadata, null);
+    }
+
+    public WSEndpointDeploymentUnit(ClassLoader loader, String context, Map<String, String> urlPatternToClassName,
+            JBossWebMetaData jbossWebMetaData, WebservicesMetaData metadata, JBossWebservicesMetaData jwsMetaData) {
         this.deploymentName = context + ".deployment";
 
         JAXWSDeployment jaxwsDeployment = new JAXWSDeployment();
@@ -67,6 +73,9 @@ public class WSEndpointDeploymentUnit extends SimpleAttachable implements Deploy
         if (metadata != null) {
             this.putAttachment(WSAttachmentKeys.WEBSERVICES_METADATA_KEY, metadata);
         }
+        if (jwsMetaData != null) {
+            this.putAttachment(WSAttachmentKeys.JBOSS_WEBSERVICES_METADATA_KEY, jwsMetaData);
+        }
     }
 
     private String getShortName(String className, String urlPattern) {
diff --git a/webservices/server-integration/src/main/java/org/jboss/as/webservices/service/EndpointPublishService.java b/webservices/server-integration/src/main/java/org/jboss/as/webservices/service/EndpointPublishService.java
index 233a01d..586a44f 100644
--- a/webservices/server-integration/src/main/java/org/jboss/as/webservices/service/EndpointPublishService.java
+++ b/webservices/server-integration/src/main/java/org/jboss/as/webservices/service/EndpointPublishService.java
@@ -89,7 +89,7 @@ public final class EndpointPublishService implements Service<Context> {
         ROOT_LOGGER.starting(name);
         try {
             EndpointPublisherImpl publisher = new EndpointPublisherImpl(hostInjector.getValue(), true);
-            wsctx = publisher.publish(ctx.getChildTarget(), context, loader, urlPatternToClassName, jbwmd, wsmd);
+            wsctx = publisher.publish(ctx.getChildTarget(), context, loader, urlPatternToClassName, jbwmd, wsmd, null);
         } catch (Exception e) {
             throw new StartException(e);
         }
