diff --git a/project-code/app/org/apache/cxf/transport/play/CxfController.scala b/project-code/app/org/apache/cxf/transport/play/CxfController.scala index 3d28342..db0f5cd 100644 --- a/project-code/app/org/apache/cxf/transport/play/CxfController.scala +++ b/project-code/app/org/apache/cxf/transport/play/CxfController.scala @@ -34,6 +34,7 @@ class CxfController extends Controller { val msg: Message = new MessageImpl msg.put(Message.HTTP_REQUEST_METHOD, request.method) msg.put(Message.REQUEST_URL, request.path) + msg.put(Message.REQUEST_URI, request.uri) msg.put(Message.QUERY_STRING, request.rawQueryString) msg.put(Message.PROTOCOL_HEADERS, headersAsJava) msg.put(Message.CONTENT_TYPE, request.headers.get(Message.CONTENT_TYPE) getOrElse null) diff --git a/project-code/app/org/apache/cxf/transport/play/PlayTransportFactory.java b/project-code/app/org/apache/cxf/transport/play/PlayTransportFactory.java index 65fd67e..eeac041 100644 --- a/project-code/app/org/apache/cxf/transport/play/PlayTransportFactory.java +++ b/project-code/app/org/apache/cxf/transport/play/PlayTransportFactory.java @@ -81,6 +81,11 @@ protected PlayDestination getDestination(EndpointInfo ei, EndpointReferenceType } public PlayDestination getDestination(String endpointAddress) { + for (java.util.Map.Entry e: destinations.entrySet()) { + if (endpointAddress.startsWith(e.getKey())) { + return e.getValue(); + } + } return destinations.get(endpointAddress); }