Author: darran.lofthouse(a)jboss.com
Date: 2010-01-08 06:11:26 -0500 (Fri, 08 Jan 2010)
New Revision: 11368
Modified:
stack/native/branches/jbossws-native-3.1.2/modules/core/src/main/java/org/jboss/ws/metadata/builder/MetaDataBuilder.java
Log:
[JBPAPP-3358] WSException: Malformed URL when deploying to AS bound to IPv6 address.
Modified:
stack/native/branches/jbossws-native-3.1.2/modules/core/src/main/java/org/jboss/ws/metadata/builder/MetaDataBuilder.java
===================================================================
---
stack/native/branches/jbossws-native-3.1.2/modules/core/src/main/java/org/jboss/ws/metadata/builder/MetaDataBuilder.java 2010-01-07
17:32:01 UTC (rev 11367)
+++
stack/native/branches/jbossws-native-3.1.2/modules/core/src/main/java/org/jboss/ws/metadata/builder/MetaDataBuilder.java 2010-01-08
11:11:26 UTC (rev 11368)
@@ -223,33 +223,39 @@
ServerConfig config =
spiProvider.getSPI(ServerConfigFactory.class).getServerConfig();
String host = config.getWebServiceHost();
- String port = "";
+
+ int port;
if ("https".equals(uriScheme))
{
- int portNo = config.getWebServiceSecurePort();
- if (portNo != 443)
- {
- port = ":" + portNo;
- }
-
+ port = config.getWebServiceSecurePort();
}
else
{
- int portNo = config.getWebServicePort();
- if (portNo != 80)
- {
- port = ":" + portNo;
- }
+ port = config.getWebServicePort();
+ }
+
+ // Reset port if using the default for the scheme.
+ if (("http".equals(uriScheme) && port == 80) ||
("https".equals(uriScheme) && port == 443))
+ {
+ port = -1;
}
- String urlStr = uriScheme + "://" + host + port + servicePath;
+ URL url = null;
try
{
- return new URL(urlStr).toExternalForm();
+ if (port > -1)
+ {
+ url = new URL(uriScheme, host, port, servicePath);
+ }
+ else
+ {
+ url = new URL(uriScheme, host, servicePath);
+ }
+ return url.toExternalForm();
}
catch (MalformedURLException e)
{
- throw new WSException("Malformed URL: " + urlStr);
+ throw new WSException("Malformed URL: uriScheme={" + uriScheme +
"} host={" + host + "} port={" + port + "} servicePath={" +
servicePath + "}", e);
}
}