public void onMessage(final HttpRequest request, final HttpResponse response) throws Exception { service.service(request.getInputStream(), response.getOutputStream()); } }
public void getWsdl(final HttpRequest request, final HttpResponse response) throws Exception { final URI realLocation = request.getURI(); // log.info("Request at " + realLocation); final String query = realLocation.getQuery(); if (query == null || !query.toLowerCase().startsWith("wsdl")) { throw new IllegalStateException("request must contain a wsdl or WSDL parameter: " + request.getParameters()); } final String locationKey; if (query.length() > 4) { locationKey = query.substring(5); } else { locationKey = wsdlLocation.toString(); } final Object wsdl = wsdlMap.get(locationKey); if (wsdl == null) { throw new IllegalStateException("No wsdl or schema known at location: " + locationKey); } final URI updated = new URI(realLocation.getScheme(), realLocation.getUserInfo(), realLocation.getHost(), realLocation.getPort(), null, //try null for no path null, null); final String replaced = ((String) wsdl).replaceAll(WsConstants.LOCATION_REPLACEMENT_TOKEN, updated.toString()); response.getOutputStream().write(replaced.getBytes()); response.getOutputStream().flush(); }
public void doInvoke(final HttpRequest httpRequest, final HttpResponse httpResponse) throws IOException { String baseURL = BaseUrlHelper.getBaseURL(pattern != null ? new ServletRequestAdapter(httpRequest) { @Override // we have a filter so we need the computed servlet path to not break CXF public String getServletPath() { return pattern; } } : httpRequest); if (!baseURL.endsWith("/")) { baseURL += "/"; } httpRequest.setAttribute("org.apache.cxf.transport.endpoint.address", baseURL); final ClassLoader oldLoader = Thread.currentThread().getContextClassLoader(); Thread.currentThread().setContextClassLoader(CxfUtil.initBusLoader()); try { destination.invoke(null, httpRequest.getServletContext(), httpRequest, httpResponse); } catch (final Throwable t) { throw new IOException("Failed to invoke AbstractHTTPDestination", t); } finally { CxfUtil.clearBusLoader(oldLoader); } }
protected void doService(final HttpRequest req, final HttpResponse res) throws Exception { final org.apache.axis.MessageContext messageContext = new org.apache.axis.MessageContext(null); req.setAttribute(WsConstants.MESSAGE_CONTEXT, messageContext); String contentType = req.getHeader(HTTPConstants.HEADER_CONTENT_TYPE); final String contentLocation = req.getHeader(HTTPConstants.HEADER_CONTENT_LOCATION); final InputStream inputStream = req.getInputStream(); final Message requestMessage = new Message(inputStream, false, contentType, contentLocation); messageContext.setProperty(HTTPConstants.MC_HTTP_SERVLETPATHINFO, req.getURI().getPath()); messageContext.setProperty(org.apache.axis.MessageContext.TRANS_URL, req.getURI().toString()); messageContext.setService(service); messageContext.setProperty(REQUEST, req); final String soapAction = req.getHeader(HTTPConstants.HEADER_SOAP_ACTION); if (soapAction != null) { messageContext.setUseSOAPAction(true); } catch (final AxisFault fault) { if (req.getMethod().equals(HttpRequest.Method.GET.name()) && req.getParameters().isEmpty()) { String serviceName = req.getURI().getRawPath(); serviceName = serviceName.substring(serviceName.lastIndexOf("/") + 1); printServiceInfo(res, serviceName);
public void onMessage(HttpRequest request, HttpResponse response) throws Exception { Object token = null; String auth = request.getHeader("Authorization"); if (auth != null && auth.length() > 0) { if (auth.toUpperCase().startsWith("BASIC ")) { if (token != null || HttpRequest.Method.GET == request.getMethod()) { httpListener.onMessage(request, response); } else {
if (request instanceof HttpRequestImpl) { final HttpRequestImpl httpRequest = HttpRequestImpl.class.cast(request); final WebContext web = findWebContext(request.getURI() == null ? request.getContextPath() : request.getURI().getPath()); if (web != null) { httpRequest.setApplication(web);
public void onMessage(HttpRequest request, HttpResponse response) throws Exception { Map<String, HttpListener> listeners; synchronized (registry) { listeners = new HashMap<String, HttpListener>(registry); } String path = request.getURI().getPath(); for (Map.Entry<String, HttpListener> entry : listeners.entrySet()) { String pattern = entry.getKey(); HttpListener listener = entry.getValue(); if (path.matches(pattern)) { listener.onMessage(request, response); break; } } }
@Override public void onMessage(final HttpRequest request, final HttpResponse response) throws Exception { final ClassLoader oldLoader = Thread.currentThread().getContextClassLoader(); Thread.currentThread().setContextClassLoader(CxfUtil.initBusLoader()); try { destination.invoke(null, request.getServletContext(), request, response); } finally { if (oldLoader != null) { CxfUtil.clearBusLoader(oldLoader); } } }
public Object getServiceObject(final MessageContext msgContext, final Handler service, final String clsName, final IntHolder scopeHolder) throws Exception { final HttpRequest request = (HttpRequest) msgContext.getProperty(AxisWsContainer.REQUEST); return request.getAttribute(WsConstants.POJO_INSTANCE); }
@Override public void onMessage(final HttpRequest request, final HttpResponse response) throws Exception { final String path = request.getURI().getPath(); final FilterListener currentFL = currentFilterListener.get();
@Override public void onMessage(final HttpRequest request, final HttpResponse response) throws Exception { final ClassLoader oldLoader = Thread.currentThread().getContextClassLoader(); Thread.currentThread().setContextClassLoader(CxfUtil.initBusLoader()); try { destination.invoke(null, request.getServletContext(), request, response); } finally { if (oldLoader != null) { CxfUtil.clearBusLoader(oldLoader); } } }
Object token = null; String auth = request.getHeader("Authorization"); if (auth != null && auth.length() > 0) { if (auth.toUpperCase(Locale.ENGLISH).startsWith("BASIC ")) { if (token != null || HttpRequest.Method.GET.name().equals(request.getMethod())) { httpListener.onMessage(request, response); } else {
public void onMessage(HttpRequest request, HttpResponse response) throws Exception { service.service(request.getInputStream(), response.getOutputStream()); } }
public void onMessage(HttpRequest request, HttpResponse response) throws Exception { service.service(request.getInputStream(), response.getOutputStream()); } }