You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2014/11/30 10:09:35 UTC
tomee git commit: TOMEE-1460 support multiple host for a soap service
Repository: tomee
Updated Branches:
refs/heads/tomee-1.7.x 674942eb2 -> fb0a6a51d
TOMEE-1460 support multiple host for a soap service
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/fb0a6a51
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/fb0a6a51
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/fb0a6a51
Branch: refs/heads/tomee-1.7.x
Commit: fb0a6a51d77ccd60786935aa86baf2a3da3f2119
Parents: 674942e
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Sun Nov 30 10:09:18 2014 +0100
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Sun Nov 30 10:09:18 2014 +0100
----------------------------------------------------------------------
.../src/main/java/org/apache/openejb/config/WsDeployer.java | 6 +++---
.../org/apache/openejb/server/webservices/WsService.java | 8 ++++++--
2 files changed, 9 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/fb0a6a51/container/openejb-core/src/main/java/org/apache/openejb/config/WsDeployer.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/config/WsDeployer.java b/container/openejb-core/src/main/java/org/apache/openejb/config/WsDeployer.java
index 6d1a4f6..e97eb23 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/config/WsDeployer.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/config/WsDeployer.java
@@ -187,12 +187,12 @@ public class WsDeployer implements DynamicDeployer {
webserviceDescription.getPortComponent().add(portComponent);
}
- // default portId == moduleId.servletName
+ // default portId == host.moduleId.servletName
if (portComponent.getId() == null) {
- portComponent.setId(webModule.getModuleId() + "." + servlet.getServletName());
+ portComponent.setId(webModule.getHost() + "." + webModule.getModuleId() + "." + servlet.getServletName());
}
if (webserviceDescription.getId() == null) {
- webserviceDescription.setId(webModule.getModuleId() + "." + servlet.getServletName());
+ webserviceDescription.setId(webModule.getHost() + "." + webModule.getModuleId() + "." + servlet.getServletName());
}
// set port values from annotations if not already set
http://git-wip-us.apache.org/repos/asf/tomee/blob/fb0a6a51/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java
----------------------------------------------------------------------
diff --git a/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java b/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java
index c699a3d..ffec7fb 100644
--- a/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java
+++ b/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java
@@ -416,7 +416,7 @@ public abstract class WsService implements ServerService, SelfManaging {
}
// give servlet a reference to the webservice container
- final List<String> addresses = wsRegistry.setWsContainer(container, classLoader, webApp.contextRoot, virtualHost, servlet, realm, transport, auth);
+ final List<String> addresses = wsRegistry.setWsContainer(container, classLoader, webApp.contextRoot, host(webApp), servlet, realm, transport, auth);
// one of the registered addresses to be the connonical address
final String address = HttpUtil.selectSingleAddress(addresses);
@@ -436,6 +436,10 @@ public abstract class WsService implements ServerService, SelfManaging {
}
}
+ private String host(final WebAppInfo webApp) {
+ return webApp.host == null ? virtualHost : webApp.host;
+ }
+
public void undeploy(@Observes final AssemblerBeforeApplicationDestroyed event) {
final AppInfo appInfo = event.getApp();
if (deployedApplications.remove(appInfo) != null) {
@@ -509,7 +513,7 @@ public abstract class WsService implements ServerService, SelfManaging {
// clear servlet's reference to the webservice container
if (this.wsRegistry != null) {
try {
- this.wsRegistry.clearWsContainer(webApp.contextRoot, virtualHost, servlet);
+ this.wsRegistry.clearWsContainer(webApp.contextRoot, host(webApp), servlet);
} catch (final IllegalArgumentException ignored) {
// no-op
}