List of usage examples for javax.xml.ws.handler MessageContext SERVLET_REQUEST
String SERVLET_REQUEST
To view the source code for javax.xml.ws.handler MessageContext SERVLET_REQUEST.
Click Source Link
From source file:com.vmware.identity.sts.util.MessageExtractionUtil.java
/** * Parse the message context to get the user name * @param context cannot be null//from w ww . ja v a2 s .co m * @return * @throws MessageExtractionException */ public static String extractUsernameFromMsgContext(MessageContext context) { Validate.notNull(context); ServletRequest req = (ServletRequest) context.get(MessageContext.SERVLET_REQUEST); assert req != null; return extractUsernameFromSevletRequest(req); }
From source file:dk.statsbiblioteket.sbutil.webservices.authentication.ExtractCredentials.java
/** * Extract credentials from a web service context. * * @param wscontext A given web service context. * @return Credentials extracted from the web service context. * @throws CredentialsException On trouble extracting the credentials. * @throws NoCredentialsException If there are no credentials in the * context.//from ww w.ja v a 2 s .co m */ public static Credentials extract(WebServiceContext wscontext) throws CredentialsException { MessageContext mc = wscontext.getMessageContext(); //FIXME: NPE on no servlet request? //FIXME: ClassCastException on other type of SOAP webservice call HttpServletRequest request = (HttpServletRequest) mc.get(MessageContext.SERVLET_REQUEST); return extract(request); }
From source file:it.greenvulcano.gvesb.api.security.JaxWsIdentityInfo.java
public JaxWsIdentityInfo(WebServiceContext securityContext) { super();//from www . j a v a 2 s. co m HttpServletRequest request = (HttpServletRequest) securityContext.getMessageContext() .get(MessageContext.SERVLET_REQUEST); this.securityContext = (SecurityContext) securityContext.getMessageContext() .get(SecurityContext.class.getName()); this.remoteAddress = request != null ? request.getRemoteAddr() : null; }
From source file:com.vmware.identity.sts.ws.handlers.LogContextHandler.java
@Override public boolean handleMessage(SOAPMessageContext context) { Validate.notNull(context, "SOAPMessageContext should not be null."); Boolean outbound = (Boolean) context.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY); if (outbound != null && outbound.equals(Boolean.TRUE)) { return true; } else {//w w w . j ava2 s .co m String tenant = null; String correlationId = null; // http://docs.oracle.com/javase/7/docs/api/javax/xml/ws/handler/MessageContext.html : // static final String HTTP_REQUEST_HEADERS // Standard property: HTTP request headers. // Type: java.util.Map<java.lang.String, java.util.List<java.lang.String>> // // static final String SERVLET_REQUEST // Standard property: servlet request object. // Type: javax.servlet.http.HttpServletRequest HttpServletRequest request = (HttpServletRequest) (context.get(MessageContext.SERVLET_REQUEST)); Validate.notNull(request, "HttpServletRequest should not be null."); @SuppressWarnings("unchecked") Map<String, List<String>> headers = (Map<String, List<String>>) (context .get(MessageContext.HTTP_REQUEST_HEADERS)); if (headers != null) { List<String> correlationIds = headers.get(WsConstants.ACTIVITY_CORRELATION_ID_CUSTOM_HEADER); if ((correlationIds != null) && (correlationIds.size() > 1)) { correlationId = correlationIds.get(0); correlationId = LogContextHandler.removeNewline(correlationId); correlationId = LogContextHandler.truncate(correlationId, 200); } } if ((correlationId == null) || (correlationId.isEmpty())) { correlationId = UUID.randomUUID().toString(); logger.debug("unable to extract correlation id from request. generated new correllation id [{}]", correlationId); } else { logger.debug("extracted correlation id [{}] from the request", correlationId); } try { tenant = TenantExtractor.extractTenantName(request.getPathInfo()); tenant = LogContextHandler.removeNewline(tenant); tenant = LogContextHandler.truncate(tenant, 200); logger.debug("extracted tenant [{}] from the request", tenant); } catch (NoSuchIdPException ex) { logger.error("failed to extract tenant from the request", ex); } if ((tenant == null) || (tenant.isEmpty())) { tenant = WsConstants.DEFAULT_TENANT; logger.debug( "unable to extract explicit tenant name from request. Using default tenant marker [{}].", tenant); } else { logger.debug("extracted tenant name [{}] from the request", tenant); } this._diagCtxt = DiagnosticsContextFactory.createContext(correlationId, tenant); } return true; }
From source file:it.govpay.web.handler.MessageLoggingHandlerUtils.java
@SuppressWarnings("unchecked") public static boolean logToSystemOut(SOAPMessageContext smc, String tipoServizio, int versioneServizio, Logger log) {// ww w. j a va 2 s .c o m Boolean outboundProperty = (Boolean) smc.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY); GpContext ctx = null; Message msg = new Message(); SOAPMessage message = smc.getMessage(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); try { message.writeTo(baos); msg.setContent(baos.toByteArray()); } catch (Exception e) { log.error("Exception in handler: " + e); } Map<String, List<String>> httpHeaders = null; if (outboundProperty.booleanValue()) { ctx = GpThreadLocal.get(); httpHeaders = (Map<String, List<String>>) smc.get(MessageContext.HTTP_RESPONSE_HEADERS); msg.setType(MessageType.RESPONSE_OUT); ctx.getContext().getResponse().setOutDate(new Date()); ctx.getContext().getResponse().setOutSize(Long.valueOf(baos.size())); } else { try { ctx = new GpContext(smc, tipoServizio, versioneServizio); ThreadContext.put("op", ctx.getTransactionId()); GpThreadLocal.set(ctx); } catch (Exception e) { log.error(e.getMessage(), e); return false; } httpHeaders = (Map<String, List<String>>) smc.get(MessageContext.HTTP_REQUEST_HEADERS); msg.setType(MessageType.REQUEST_IN); msg.setContentType(((HttpServletRequest) smc.get(MessageContext.SERVLET_REQUEST)).getContentType()); ctx.getContext().getRequest().setInDate(new Date()); ctx.getContext().getRequest().setInSize(Long.valueOf(baos.size())); } if (httpHeaders != null) { for (String key : httpHeaders.keySet()) { if (httpHeaders.get(key) != null) { if (key == null) msg.addHeader(new Property("Status-line", httpHeaders.get(key).get(0))); else if (httpHeaders.get(key).size() == 1) msg.addHeader(new Property(key, httpHeaders.get(key).get(0))); else msg.addHeader(new Property(key, ArrayUtils.toString(httpHeaders.get(key)))); } } } ctx.log(msg); return true; }
From source file:org.meerkat.ws.MeerkatWebService.java
/** * getRequestClientIP/*from w ww .j a v a 2 s.c om*/ * @return */ public final String getRequestClientIP() { MessageContext mc = wsContext.getMessageContext(); HttpServletRequest req = null; String remoteAddr = ""; try { req = (HttpServletRequest) mc.get(MessageContext.SERVLET_REQUEST); remoteAddr = req.getRemoteAddr(); } catch (Exception e) { log.warn("Unable to get client request remote address. " + e.getMessage()); return ""; } return remoteAddr; }
From source file:com.hitaware.hitaware.ws.HitAwareIntegrator.java
private HttpServletRequest getRequest() { MessageContext mc = wsContext.getMessageContext(); HttpServletRequest request = (HttpServletRequest) mc.get(MessageContext.SERVLET_REQUEST); return request; }
From source file:edu.duke.cabig.c3pr.web.security.SecureWebServiceHandler.java
public void handleMessage(SoapMessage message) throws Fault { SOAPMessageContext ctx = new SOAPMessageContextImpl(message); try {//from w w w . j a v a 2 s . c o m ServletContext servletContext = (ServletContext) ctx.get(MessageContext.SERVLET_CONTEXT); HttpServletRequest request = (HttpServletRequest) ctx.get(MessageContext.SERVLET_REQUEST); SAMLAssertion samlAssertion = extractSAMLAssertion(message); verifyAssertion(samlAssertion); authenticateSubject(servletContext, samlAssertion); if (SecurityContextHolder.getContext().getAuthentication() == null) { throw new RuntimeException( "Unable to authenticate service caller: perhaps, invalid SAML assertion?"); } AuditInfoFilter.setAuditInfo(request); } catch (Exception e) { log.error(e, e); generateSecurityFault(e); } }
From source file:com.mycompany.frogsssa.testDD.java
@Override public void data(String source, byte[] data) { String msg = new String(data); System.out.println("DATA src: " + source + " d: " + msg); if (msg.substring(0, 10).equals("REGISTERED")) { if (!msg.contains(":")) { System.out.println("Wrong response format from the configuration architecture\n" + "Expected REGISTERED:<ID app> instead of " + msg); }/*from ww w . ja v a 2 s . com*/ String id = msg.split(":")[1]; //URI ad = uriInfo.getBaseUri(); MessageContext msgCtxt = ConnectionModule.wsCtxt.getMessageContext(); HttpServletRequest request = (HttpServletRequest) msgCtxt.get(MessageContext.SERVLET_REQUEST); String hostName = request.getServerName(); int port = request.getServerPort(); String contextPath = request.getContextPath(); String uri = "http://" + hostName + ":" + port + contextPath; this.publish("public." + id + "/restServer", uri); } ConnectionModule.someConfiguration(this.name, new String(data)); }
From source file:com.netsteadfast.greenstep.bsc.webservice.impl.ApiWebServiceImpl.java
/** * SOAP SoapUI //from w ww . j av a 2 s. c o m * ================================================================================== <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice.bsc.greenstep.netsteadfast.com/"> <soapenv:Header/> <soapenv:Body> <web:getScorecard1> <visionOid>1089abb5-3faf-445d-88ff-cd7690ac6743</visionOid> <startDate></startDate> <endDate></endDate> <startYearDate>2015</startYearDate> <endYearDate>2016</endYearDate> <frequency>6</frequency> <dataFor>all</dataFor> <measureDataOrganizationOid></measureDataOrganizationOid> <measureDataEmployeeOid></measureDataEmployeeOid> <contentFlag></contentFlag> </web:getScorecard1> </soapenv:Body> </soapenv:Envelope> * ================================================================================== * * * REST : * curl -i -X GET "http://127.0.0.1:8080/gsbsc-web/services/jaxrs/scorecard1?visionOid=1089abb5-3faf-445d-88ff-cd7690ac6743&startDate=&endDate=&startYearDate=2015&endYearDate=2016&frequency=6&dataFor=all&measureDataOrganizationOid=&measureDataEmployeeOid=&contentFlag=" * */ @WebMethod @GET @Path("/scorecard1/") @Override public BscApiServiceResponse getScorecard1( @WebParam(name = "visionOid") @QueryParam("visionOid") String visionOid, @WebParam(name = "startDate") @QueryParam("startDate") String startDate, @WebParam(name = "endDate") @QueryParam("endDate") String endDate, @WebParam(name = "startYearDate") @QueryParam("startYearDate") String startYearDate, @WebParam(name = "endYearDate") @QueryParam("endYearDate") String endYearDate, @WebParam(name = "frequency") @QueryParam("frequency") String frequency, @WebParam(name = "dataFor") @QueryParam("dataFor") String dataFor, @WebParam(name = "measureDataOrganizationOid") @QueryParam("measureDataOrganizationOid") String measureDataOrganizationOid, @WebParam(name = "measureDataEmployeeOid") @QueryParam("measureDataEmployeeOid") String measureDataEmployeeOid, @WebParam(name = "contentFlag") @QueryParam("contentFlag") String contentFlag) throws Exception { HttpServletRequest request = null; if (this.getWebServiceContext() != null && this.getWebServiceContext().getMessageContext() != null) { request = (HttpServletRequest) this.getWebServiceContext().getMessageContext() .get(MessageContext.SERVLET_REQUEST); } Subject subject = null; BscApiServiceResponse responseObj = new BscApiServiceResponse(); responseObj.setSuccess(YesNo.NO); try { subject = WsAuthenticateUtils.login(); this.processForScorecard(responseObj, request, visionOid, startDate, endDate, startYearDate, endYearDate, frequency, dataFor, measureDataOrganizationOid, measureDataEmployeeOid, contentFlag); } catch (Exception e) { responseObj.setMessage(e.getMessage()); } finally { if (!YesNo.YES.equals(responseObj.getSuccess())) { responseObj.setMessage(SysMessageUtil.get(GreenStepSysMsgConstants.SEARCH_NO_DATA)); } WsAuthenticateUtils.logout(subject); } subject = null; return responseObj; }