Author: dkulp
Date: Fri Oct 22 14:54:31 2010
New Revision: 1026352
URL: http://svn.apache.org/viewvc?rev=1026352&view=rev
Log:
Merged revisions 1026341 via svnmerge from
https://svn.apache.org/repos/asf/cxf/trunk
........
r1026341 | dkulp | 2010-10-22 10:32:21 -0400 (Fri, 22 Oct 2010) | 2 lines
[CXF-3082] Make EndpointImpl.publish() work correctly without throwing
the NPE on the get of the service list and wsdl
........
Modified:
cxf/branches/2.3.x-fixes/ (props changed)
cxf/branches/2.3.x-fixes/rt/core/src/main/java/org/apache/cxf/interceptor/URIMappingInterceptor.java
cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletDestination.java
cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletClientTest.java
cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletServer.java
Propchange: cxf/branches/2.3.x-fixes/
('svn:mergeinfo' removed)
Propchange: cxf/branches/2.3.x-fixes/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Fri Oct 22 14:54:31 2010
@@ -1 +1 @@
-/cxf/trunk:1-1022129,1022154,1022194,1022401-1022402,1022911,1023068,1023121,1023804,1023971-1023973,1024006,1024070,1024487,1024489,1025679,1025683,1025804
+/cxf/trunk:1-1022129,1022154,1022194,1022401-1022402,1022911,1023068,1023121,1023804,1023971-1023973,1024006,1024070,1024487,1024489,1025679,1025683,1025804,1026341
Modified:
cxf/branches/2.3.x-fixes/rt/core/src/main/java/org/apache/cxf/interceptor/URIMappingInterceptor.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.3.x-fixes/rt/core/src/main/java/org/apache/cxf/interceptor/URIMappingInterceptor.java?rev=1026352&r1=1026351&r2=1026352&view=diff
==============================================================================
---
cxf/branches/2.3.x-fixes/rt/core/src/main/java/org/apache/cxf/interceptor/URIMappingInterceptor.java
(original)
+++
cxf/branches/2.3.x-fixes/rt/core/src/main/java/org/apache/cxf/interceptor/URIMappingInterceptor.java
Fri Oct 22 14:54:31 2010
@@ -337,13 +337,12 @@ public class URIMappingInterceptor exten
return queries;
}
- private String getBasePath(Message message) {
- return (String)message.get(Message.BASE_PATH);
- }
-
private String getRest(Message message) {
String path = (String)message.get(Message.PATH_INFO);
- String basePath = getBasePath(message);
+ String basePath = (String)message.get(Message.BASE_PATH);
+ if (basePath == null) {
+ basePath = "/";
+ }
return StringUtils.diff(path, basePath);
}
Modified:
cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java?rev=1026352&r1=1026351&r2=1026352&view=diff
==============================================================================
---
cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
(original)
+++
cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
Fri Oct 22 14:54:31 2010
@@ -93,6 +93,9 @@ public class ServletController extends A
&& d2.getAddress() != null
&& d2.getAddress().getAddress() != null) {
ad = d2.getAddress().getAddress().getValue();
+ if (ad == null) {
+ ad = "/";
+ }
}
if (ad != null
&& (ad.equals(path)
Modified:
cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletDestination.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletDestination.java?rev=1026352&r1=1026351&r2=1026352&view=diff
==============================================================================
---
cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletDestination.java
(original)
+++
cxf/branches/2.3.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletDestination.java
Fri Oct 22 14:54:31 2010
@@ -100,6 +100,9 @@ public class ServletDestination extends
protected String getBasePath(String contextPath) throws IOException {
String address = getAddress().getAddress().getValue();
+ if (address == null) {
+ return contextPath;
+ }
if (address.startsWith("http")) {
return URI.create(address).getPath();
}
Modified:
cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletClientTest.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletClientTest.java?rev=1026352&r1=1026351&r2=1026352&view=diff
==============================================================================
---
cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletClientTest.java
(original)
+++
cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletClientTest.java
Fri Oct 22 14:54:31 2010
@@ -20,6 +20,9 @@ package org.apache.cxf.systest.servlet;
import java.lang.reflect.UndeclaredThrowableException;
import java.net.URL;
+import java.util.HashSet;
+import java.util.Set;
+
import javax.xml.namespace.QName;
import com.meterware.httpunit.WebConversation;
@@ -75,10 +78,16 @@ public class NoSpringServletClientTest e
@Test
public void testGetServiceList() throws Exception {
WebConversation client = new WebConversation();
- WebResponse res = client.getResponse(serviceURL);
+ WebResponse res = client.getResponse(serviceURL + "/services");
WebLink[] links = res.getLinks();
- assertEquals("There should get two links for the service", 2,
links.length);
- assertEquals(serviceURL + "Greeter?wsdl", links[0].getURLString());
+ Set<String> s = new HashSet<String>();
+ for (WebLink l : links) {
+ s.add(l.getURLString());
+ }
+ assertEquals("There should be 3 links for the service", 3,
links.length);
+ assertTrue(s.contains(serviceURL + "Greeter?wsdl"));
+ assertTrue(s.contains(serviceURL + "Hello?wsdl"));
+ assertTrue(s.contains(serviceURL + "?wsdl"));
assertEquals("text/html", res.getContentType());
}
}
Modified:
cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletServer.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletServer.java?rev=1026352&r1=1026351&r2=1026352&view=diff
==============================================================================
---
cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletServer.java
(original)
+++
cxf/branches/2.3.x-fixes/systests/transports/src/test/java/org/apache/cxf/systest/servlet/NoSpringServletServer.java
Fri Oct 22 14:54:31 2010
@@ -22,6 +22,7 @@ import javax.xml.ws.Endpoint;
import org.apache.cxf.Bus;
import org.apache.cxf.BusFactory;
+import org.apache.cxf.jaxws.EndpointImpl;
import org.apache.cxf.testutil.common.AbstractBusTestServerBase;
import org.apache.cxf.transport.servlet.CXFNonSpringServlet;
import org.apache.hello_world_soap_http.GreeterImpl;
@@ -63,6 +64,8 @@ public class NoSpringServletServer exten
Endpoint.publish("/Greeter", impl);
HelloImpl helloImpl = new HelloImpl();
Endpoint.publish("/Hello", helloImpl);
+
+ ((EndpointImpl)Endpoint.create(helloImpl)).publish();
} catch (Exception e) {
throw new RuntimeException(e);