Java 类javax.xml.ws.handler.LogicalMessageContext 实例源码

项目:appverse-server    文件:ClientPerformanceMonitorLogicalHandler.java   
/**
   * Handle message 
   * @param smc SOAPMessageContext
   * @return boolean 
   */
public boolean handleMessage(LogicalMessageContext smc) {
    Boolean outboundProperty = (Boolean) smc
            .get(MessageContext.MESSAGE_OUTBOUND_PROPERTY); 
    if (outboundProperty.booleanValue()) { 
        startTime = new Date();
        smc.put(HandlerName + "StartTime", startTime);
    } else { 
        try {
            startTime = (Date) smc.get(HandlerName + "StartTime");
            endTime = new Date();
            long elapsedTime = endTime.getTime() - startTime.getTime();

            smc.put("ELAPSED_TIME", elapsedTime);
            smc.setScope("ELAPSED_TIME", MessageContext.Scope.APPLICATION); 
            logger.info("Elapsed time in handler " + HandlerName + " is "
                    + elapsedTime); 
        } catch (Exception x) {
            x.printStackTrace();
        }
    } 
    return true;
}
项目:wise-webui    文件:ResponseLogHandler.java   
private void doLog(LogicalMessageContext smc) {
if (!(Boolean) smc.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY)) {
    try {
    TransformerFactory tff = TransformerFactory.newInstance();
    Transformer tf = tff.newTransformer();
    tf.setOutputProperty(OutputKeys.INDENT, "yes");
    tf.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");

    Source sc = smc.getMessage().getPayload();

    StreamResult result = new StreamResult(outputStream);
    tf.transform(sc, result);

    } catch (Exception e) {
    PrintWriter ps = new PrintWriter(outputStream);
    ps.println("Exception getting response message log: ");
    e.printStackTrace(ps);
    }
}
   }
项目:wso2-axis2    文件:LogicalMessageContextTests.java   
/**
 * Test to make sure we can get the payload multiple times from the same LogicalMessage.
 * @throws Exception
 */
public void testGetMultiplePayloadsAsSource() throws Exception {
    LogicalMessageContext lmc = createSampleContext();

    LogicalMessage msg = lmc.getMessage();
    assertTrue("The returned LogicalMessage was null", msg != null);

    int loopCount = 3;
    for (int i = 0; i < loopCount; ++i) {
        Source payload = msg.getPayload();
        assertTrue("Attempt number "  + i + " to get the payload (Source) was null", payload != null);


        String resultContent = _getStringFromSource(payload);
        assertTrue("The content returned in loop " + i + " was null", resultContent != null);
        assertTrue("The content returned in loop " + i + " was incomplete, unexpected element", resultContent.indexOf("echoString") > -1);
        assertTrue("The content returned in loop " + i + " was incomplete, unexpected content", resultContent.indexOf(INPUT) > -1);            
    }
}
项目:wso2-axis2    文件:LogicalMessageContextTests.java   
public void testConvertMessageToFault() throws Exception {
    LogicalMessageContext lmc = createSampleContext();

    LogicalMessage msg = lmc.getMessage();
    assertTrue("The returned LogicalMessage was null", msg != null);

    Source payload = msg.getPayload();
    assertTrue("The returned payload (Source) was null", payload != null);

    String resultContent = _getStringFromSource(payload);
    assertTrue("The content returned was null", resultContent != null);

    ByteArrayInputStream bais = new ByteArrayInputStream(sampleSOAP11FaultPayload.getBytes());
    StreamSource faultSource = new StreamSource(bais);

    msg.setPayload(faultSource);

    Source newFaultSource = msg.getPayload();
    assertTrue("The new fault content returned was null", faultSource != null);

    String newFaultContent = _getStringFromSource(newFaultSource);
    assertTrue("The new fault content returned was invalid", newFaultContent.equals(sampleSOAP11FaultPayload));
}
项目:wso2-axis2    文件:LogicalMessageContextTests.java   
private LogicalMessageContext createSampleFaultContext() throws Exception {
    MessageFactory factory = (MessageFactory) FactoryRegistry.getFactory(MessageFactory.class);
    Message msg = factory.create(Protocol.soap11);

    XMLFaultReason reason = new XMLFaultReason(FAULT_INPUT);        
    XMLFault fault = new XMLFault(XMLFaultCode.SENDER, reason);
    msg.setXMLFault(fault);

    MessageContext mc = new MessageContext();
    mc.setMEPContext(new MEPContext(mc));
    mc.setMessage(msg);

    LogicalMessageContext lmc = MessageContextFactory.createLogicalMessageContext(mc);

    return lmc;
}
项目:wso2-axis2    文件:CompositeMessageContextTests.java   
/**
 * A test that mimics the inbound flow through a handler chain.
 */
public void testInboundFaultFlow() throws Exception {
    MessageContext mc = createSampleFaultMessageContext();

    LogicalMessageContext lmc = MessageContextFactory.createLogicalMessageContext(mc);
    LogicalMessage lm = lmc.getMessage();
    Source payload = lm.getPayload();
    assertTrue("The returned payload (Source) was null", payload != null);

    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    StreamResult result = new StreamResult(baos);
    Transformer t = TransformerFactory.newInstance().newTransformer();
    t.transform(payload, result);

    String content = new String(baos.toByteArray());
    assertTrue("The returned content (String) from the payload was null", content != null);
    assertTrue("The <faultcode> element was not found", content.indexOf("faultcode") > -1);
    assertTrue("The <faultstring> element was not found", content.indexOf("faultstring") > -1);
    assertTrue("The fault did not contain the expected fault string", content.indexOf(FAULT_INPUT) > -1);

    SoapMessageContext smc = MessageContextFactory.createSoapMessageContext(mc);
    SOAPMessage sm = smc.getMessage();
    assertTrue("The returned SOAPMessage was null", sm != null);
    assertTrue("The SOAPMessage did not contain a SOAPBody", sm.getSOAPBody() != null);
    assertTrue("The SOAPBody did not contain a SOAPFault", sm.getSOAPBody().getFault() != null);
}
项目:wso2-axis2    文件:CompositeMessageContextTests.java   
/**
 * A test that mimics the outbound flow through a handler chain.
 */
public void testOutboundFaultFlow() throws Exception {
    MessageContext mc = createSampleFaultMessageContext();

    SoapMessageContext smc = MessageContextFactory.createSoapMessageContext(mc);
    SOAPMessage sm = smc.getMessage();
    assertTrue("The returned SOAPMessage was null", sm != null);
    assertTrue("The SOAPMessage did not contain a SOAPBody", sm.getSOAPBody() != null);
    assertTrue("The SOAPBody did not contain a SOAPFault", sm.getSOAPBody().getFault() != null);

    LogicalMessageContext lmc = MessageContextFactory.createLogicalMessageContext(mc);
    LogicalMessage lm = lmc.getMessage();
    Source payload = lm.getPayload();
    assertTrue("The returned payload (Source) was null", payload != null);

    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    StreamResult result = new StreamResult(baos);
    Transformer t = TransformerFactory.newInstance().newTransformer();
    t.transform(payload, result);

    String content = new String(baos.toByteArray());
    assertTrue("The returned content (String) from the payload was null", content != null);
    assertTrue("The <faultcode> element was not found", content.indexOf("faultcode") > -1);
    assertTrue("The <faultstring> element was not found", content.indexOf("faultstring") > -1);
    assertTrue("The fault did not contain the expected fault string", content.indexOf(FAULT_INPUT) > -1);
}
项目:jbossws-cxf    文件:LogicalSimpleHandler.java   
@Override
public boolean handleMessage(LogicalMessageContext context)
{
   Boolean isOutbound = (Boolean) context.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY);
   String operation = ((QName) context.get(MessageContext.WSDL_OPERATION)).getLocalPart();
   if (!isOutbound && !operation.startsWith("getHandlerCounter")) {
      counter.incrementAndGet();
   } else if (isOutbound && !operation.startsWith("getHandlerCounter")) {
      outboundCounter.incrementAndGet();
   }
   return true;
}
项目:jbossws-cxf    文件:LogicalSimpleHandler.java   
@Override
public boolean handleFault(LogicalMessageContext context)
{
   String operation = ((QName) context.get(MessageContext.WSDL_OPERATION)).getLocalPart();
   if (!operation.startsWith("getHandlerCounter")) {
      outboundCounter.incrementAndGet();
   }
   return true;
}
项目:jbossws-cxf    文件:LogicalSourceHandler.java   
private boolean appendHandlerName(MessageContext msgContext, String direction)
{
   try
   {
      // Get the payload as Source
      LogicalMessageContext logicalContext = (LogicalMessageContext)msgContext;
      Source source = logicalContext.getMessage().getPayload();
      TransformerFactory tf = TransformerFactory.newInstance();
      ByteArrayOutputStream baos = new ByteArrayOutputStream(1024);
      tf.newTransformer().transform(source, new StreamResult(baos));

      // Parse the payload and extract the value
      Element root = DOMUtils.parse(new ByteArrayInputStream(baos.toByteArray()), getDocumentBuilder());
      Element element = DOMUtils.getFirstChildElement(root);

      String oldValue = DOMUtils.getTextContent(element);
      String newValue = oldValue + ":" + direction + ":LogicalSourceHandler";
      element.setTextContent(newValue);

      log.debug("oldValue: " + oldValue);
      log.debug("newValue: " + newValue);

      // Set the updated payload
      source = new DOMSource(root);
      logicalContext.getMessage().setPayload(source);

      return true;
   }
   catch (RuntimeException rte)
   {
      throw rte;
   }
   catch (Exception ex)
   {
      throw new WebServiceException(ex);
   }
}
项目:jbossws-cxf    文件:LogicalSourceHandler.java   
public boolean appendHandlerName(MessageContext msgContext, String direction)
{
   try
   {
      // Get the payload as Source
      LogicalMessageContext logicalContext = (LogicalMessageContext)msgContext;
      Source source = logicalContext.getMessage().getPayload();
      TransformerFactory tf = TransformerFactory.newInstance();
      ByteArrayOutputStream baos = new ByteArrayOutputStream(1024);
      tf.newTransformer().transform(source, new StreamResult(baos));

      // Parse the payload and extract the value
      Element root = DOMUtils.parse(new ByteArrayInputStream(baos.toByteArray()), getDocumentBuilder());

      String oldValue = DOMUtils.getTextContent(root);
      String newValue = oldValue + ":" + direction + ":LogicalSourceHandler";
      root.setTextContent(newValue);

      log.debug("oldValue: " + oldValue);
      log.debug("newValue: " + newValue);

      // Set the updated payload
      source = new DOMSource(root);
      logicalContext.getMessage().setPayload(source);

      return true;
   }
   catch (RuntimeException rte)
   {
      throw rte;
   }
   catch (Exception ex)
   {
      throw new WebServiceException(ex);
   }
}
项目:jbossws-cxf    文件:LogicalSourceHandler.java   
public boolean appendHandlerName(MessageContext msgContext, String direction)
{
   try
   {
      // Get the payload as Source
      LogicalMessageContext logicalContext = (LogicalMessageContext)msgContext;
      Source source = logicalContext.getMessage().getPayload();
      TransformerFactory tf = TransformerFactory.newInstance();
      ByteArrayOutputStream baos = new ByteArrayOutputStream(1024);
      tf.newTransformer().transform(source, new StreamResult(baos));

      // Parse the payload and extract the value
      Element root = DOMUtils.parse(new ByteArrayInputStream(baos.toByteArray()), getDocumentBuilder());

      String oldValue = DOMUtils.getTextContent(root);
      String newValue = oldValue + ":" + direction + "LogicalHandler";
      root.setTextContent(newValue);

      log.debug("oldValue: " + oldValue);
      log.debug("newValue: " + newValue);

      // Set the updated payload
      source = new DOMSource(root);
      logicalContext.getMessage().setPayload(source);

      return true;
   }
   catch (RuntimeException rte)
   {
      throw rte;
   }
   catch (Exception ex)
   {
      throw new WebServiceException(ex);
   }
}
项目:jbossws-cxf    文件:HandlerAuthInterceptor.java   
@Override
public boolean invokeLogicalHandlersHandleFault(boolean requestor, LogicalMessageContext context)
{
   if (context.containsKey(KEY)) {
      return true;
   }
   return super.invokeLogicalHandlersHandleFault(requestor, context);
}
项目:mycarenet    文件:PayloadLogicalHandler.java   
private void storePayload(LogicalMessageContext context) {
    Boolean outboundProperty = (Boolean) context
            .get(MessageContext.MESSAGE_OUTBOUND_PROPERTY);
    if (outboundProperty) {
        return;
    }
    LogicalMessage logicalMessage = context.getMessage();
    Source payloadSource = logicalMessage.getPayload();
    this.payload = toString(payloadSource);
}
项目:jax-ws    文件:RequestSignatureHandler.java   
@Override
   public boolean handleMessage(LogicalMessageContext messageContext) {
boolean outbound = (Boolean) messageContext
    .get(MessageContext.MESSAGE_OUTBOUND_PROPERTY);
LogicalMessage message = messageContext.getMessage();

if (outbound) {
    Source payload = message.getPayload();
    Result result = new RequestTransformer().transform(payload);
    if (!(result instanceof StreamResult)) {
    LOGGER.error(
        "Expected javax.xml.transform.stream.StreamSource but got {}.",
        result.getClass().getName());
    throw new WebServiceException(
        "Expected javax.xml.transform.stream.StreamSource but got "
            + result.getClass().getName());
    }
    String xml = ((StreamResult) result).getWriter().toString();
    try {
    message.setPayload(new StreamSource(new ByteArrayInputStream(
        xml.getBytes("UTF-8"))));
    } catch (UnsupportedEncodingException e) {
    LOGGER.error(
        "How the heck did this happen? UTF-8 is available in all JVMs",
        e);
    throw new WebServiceException(
        "How the heck did this happen? UTF-8 is available in all JVMs",
        e);
    }
}
return true;
   }
项目:dssp    文件:AttachmentsLogicalHandler.java   
@Override
public boolean handleMessage(LogicalMessageContext context) {
    Boolean outbound = (Boolean) context.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY);
    if (!outbound) {
        this.inboundAttachments = (Map<String, DataHandler>) context
                .get(MessageContext.INBOUND_MESSAGE_ATTACHMENTS);
        LOGGER.debug("inbound attachments: {}", this.inboundAttachments.keySet());
    }
    return true;
}
项目:wso2-axis2    文件:LogicalMessageContextTests.java   
/**
 * Test the javax.xml.transform.Source based APIs on the LogicalMessage interface.
 * @throws Exception
 */
public void testGetPayloadAsSource() throws Exception {
    LogicalMessageContext lmc = createSampleContext();

    LogicalMessage msg = lmc.getMessage();
    assertTrue("The returned LogicalMessage was null", msg != null);

    Source payload = msg.getPayload();
    assertTrue("The returned payload (Source) was null", payload != null);

    String resultContent = _getStringFromSource(payload);
    assertTrue("The content returned was null", resultContent != null);
    assertTrue("The content returned was incomplete, unexpected element", resultContent.indexOf("echoString") > -1);
    assertTrue("The content returned was incomplete, unexpected content", resultContent.indexOf(INPUT) > -1);
}
项目:wso2-axis2    文件:LogicalMessageContextTests.java   
/**
 * Tests the setting of the payload and make sure we don't cache improperly.
 * @throws Exception
 */
public void testGetAndSetPayloadAsSource() throws Exception {
    LogicalMessageContext lmc = createSampleContext();

    LogicalMessage msg = lmc.getMessage();
    assertTrue("The returned LogicalMessage was null", msg != null);

    Source payload = msg.getPayload();
    assertTrue("The returned payload (Source) was null", payload != null);

    String resultContent = _getStringFromSource(payload);
    assertTrue("The content returned was null", resultContent != null);
    assertTrue("The content returned was incorrect", resultContent.indexOf(INPUT) > 0);

    // Now manipluate the content and set it back on the message.
    int start = resultContent.indexOf(INPUT);
    int end = start + INPUT.length();

    String newInput = "new content goes here";
    String newContent = resultContent.substring(0, start) + newInput + resultContent.substring(end);

    ByteArrayInputStream bais = new ByteArrayInputStream(newContent.getBytes());
    StreamSource newPayload = new StreamSource(bais); 

    msg.setPayload(newPayload);

    // Check the payload to make sure the new content that we added 
    // was insterted correctly.
    Source payload2 = msg.getPayload();
    assertTrue("The returned payload (Source) was null", payload2 != null);

    String resultContent2 = _getStringFromSource(payload2);
    assertTrue("The updated content returned was null", resultContent2 != null);
    assertTrue("The updated content returned was incorrect, old content found", resultContent2.indexOf(INPUT) < 0);
    assertTrue("The updated content returned was incorrect, new content not found", resultContent2.indexOf(newInput) > -1);
}
项目:wso2-axis2    文件:LogicalMessageContextTests.java   
/**
 * Tests the setting of the payload when the original content is a fault.
 * @throws Exception
 */
public void testGetAndSetFaultPayloadAsSource() throws Exception {
    LogicalMessageContext lmc = createSampleFaultContext();

    LogicalMessage msg = lmc.getMessage();
    assertTrue("The returned LogicalMessage was null", msg != null);

    Source payload = msg.getPayload();
    assertTrue("The returned payload (Source) was null", payload != null);

    String resultContent = _getStringFromSource(payload);
    assertTrue("The content returned was null", resultContent != null);
    assertTrue("The content returned was incorrect", resultContent.indexOf(FAULT_INPUT) > 0);
    assertTrue("The content returned was incorrect, no fault found", resultContent.indexOf("Fault") > 0);

    // Now manipluate the content and set it back on the message.
    int start = resultContent.indexOf(FAULT_INPUT);
    int end = start + FAULT_INPUT.length();

    String newFaultInput = "new fault content goes here";
    String newContent = resultContent.substring(0, start) + newFaultInput + resultContent.substring(end);

    ByteArrayInputStream bais = new ByteArrayInputStream(newContent.getBytes());
    StreamSource newPayload = new StreamSource(bais); 

    msg.setPayload(newPayload);

    // Check the payload to make sure the new content that we added 
    // was insterted correctly.
    Source payload2 = msg.getPayload();
    assertTrue("The returned payload (Source) was null", payload2 != null);

    String resultContent2 = _getStringFromSource(payload2);
    assertTrue("The updated content returned was null", resultContent2 != null);
    assertTrue("The updated content returned was incorrect, old content found", resultContent2.indexOf(FAULT_INPUT) < 0);
    assertTrue("The updated content returned was incorrect, no fault found", resultContent.indexOf("Fault") > 0);
    assertTrue("The updated content returned was incorrect, new content not found", resultContent2.indexOf(newFaultInput) > -1);
}
项目:wso2-axis2    文件:LogicalMessageContextTests.java   
private LogicalMessageContext createSampleContext() throws Exception {
    MessageFactory factory = (MessageFactory) FactoryRegistry.getFactory(MessageFactory.class);
    Message msg = factory.create(Protocol.soap11);

    // Create a jaxb object
    ObjectFactory objFactory = new ObjectFactory();
    EchoString echo = objFactory.createEchoString();
    echo.setInput(INPUT);

    // Create the necessary JAXBContext
    JAXBContext jbc = JAXBContext.newInstance("test");
    JAXBBlockContext blockCtx = new JAXBBlockContext(jbc);

    // Create the Block 
    JAXBBlockFactory blockFactory = (JAXBBlockFactory) FactoryRegistry.getFactory(JAXBBlockFactory.class);
    Block block = blockFactory.createFrom(echo, blockCtx, null);

    msg.setBodyBlock(block);

    MessageContext mc = new MessageContext();
    mc.setMEPContext(new MEPContext(mc));
    mc.setMessage(msg);

    LogicalMessageContext lmc = MessageContextFactory.createLogicalMessageContext(mc);

    return lmc;
}
项目:jbossws-cxf    文件:LogicalJAXBHandler.java   
@Override
public boolean handleOutbound(LogicalMessageContext msgContext)
{
   return appendHandlerName(msgContext, "Outbound");
}
项目:jbossws-cxf    文件:LogicalJAXBHandler.java   
@Override
public boolean handleInbound(LogicalMessageContext msgContext)
{
   return appendHandlerName(msgContext, "Inbound");
}
项目:jbossws-cxf    文件:LogicalSourceHandler.java   
@Override
public boolean handleOutbound(LogicalMessageContext msgContext)
{
   return appendHandlerName(msgContext, "Outbound");
}
项目:jbossws-cxf    文件:LogicalSourceHandler.java   
@Override
public boolean handleInbound(LogicalMessageContext msgContext)
{
   return appendHandlerName(msgContext, "Inbound");
}
项目:jbossws-cxf    文件:LogicalSourceHandler.java   
@Override
public boolean handleOutbound(LogicalMessageContext msgContext)
{
   return appendHandlerName(msgContext, "Outbound");
}
项目:jbossws-cxf    文件:LogicalSourceHandler.java   
@Override
public boolean handleInbound(LogicalMessageContext msgContext)
{
   return appendHandlerName(msgContext, "Inbound");
}
项目:jbossws-cxf    文件:LogicalSourceHandler.java   
@Override
public boolean handleOutbound(LogicalMessageContext msgContext)
{
   return appendHandlerName(msgContext, "Outbound");
}
项目:jbossws-cxf    文件:LogicalSourceHandler.java   
@Override
public boolean handleInbound(LogicalMessageContext msgContext)
{
   return appendHandlerName(msgContext, "Inbound");
}
项目:jbossws-cxf    文件:HandlerAuthInterceptor.java   
@Override
public boolean invokeLogicalHandlers(boolean requestor, LogicalMessageContext context)
{
   checkAuthorization(context);
   return super.invokeLogicalHandlers(requestor, context);
}
项目:jaxws-maven-plugin    文件:WSClientHandler.java   
@Override
public boolean handleMessage(LogicalMessageContext messageContext) {
    LogicalMessage msg = messageContext.getMessage();
    return true;
}
项目:jaxws-maven-plugin    文件:WSClientHandler.java   
@Override
public boolean handleFault(LogicalMessageContext messageContext) {
    return true;
}
项目:mycarenet    文件:PayloadLogicalHandler.java   
@Override
public boolean handleMessage(LogicalMessageContext context) {
    storePayload(context);
    return true;
}
项目:mycarenet    文件:PayloadLogicalHandler.java   
@Override
public boolean handleFault(LogicalMessageContext context) {
    storePayload(context);
    return true;
}
项目:jax-ws    文件:ProviderErrorHandler.java   
@Override
   public boolean handleFault(LogicalMessageContext msgCtx) {
boolean outbound = Boolean.TRUE.equals(msgCtx
    .get(MessageContext.MESSAGE_OUTBOUND_PROPERTY));

if (outbound) {
    LogicalMessage msg = msgCtx.getMessage();

    DOMResult dom = new DOMResult();
    try {
    Source payload = msg.getPayload();

    Node node = null;
    // If payload is not a DomSource, need to transform
    if (!(payload instanceof DOMSource)) {
        Transformer tf = TransformerFactory.newInstance()
            .newTransformer();
        tf.transform(payload, dom);

        node = dom.getNode();
    } else {
        node = ((DOMSource) payload).getNode();
    }

    Node fault = node.getFirstChild();

    Node faultCode = fault.getFirstChild();

    Node faultString = faultCode.getNextSibling();

    Node detail = faultString.getNextSibling();

    // Remove the detail stacktrace, client doesn't need to see it
    if (detail != null) {
        fault.removeChild(detail);
    }

    // If payload is not a DomSource, need to set back
    if (!(payload instanceof DOMSource)) {
        LOGGER.debug("Alas, payload is not a DomSource, it is {}.",
            payload.getClass().getName());
        payload = new DOMSource(fault);

        msg.setPayload(payload);
    }
    } catch (Exception e) {
    LOGGER.error(e.getMessage(), e);

    return false;
    }
}

return true;
   }
项目:jax-ws    文件:AbstractLogicalHandler.java   
@Override
   public boolean handleFault(LogicalMessageContext context) {
return true;
   }
项目:jax-ws    文件:AbstractLogicalHandler.java   
@Override
   public boolean handleMessage(LogicalMessageContext msgCtx) {
return true;
   }
项目:jax-ws    文件:RequestSignatureHandler.java   
@Override
   public boolean handleFault(LogicalMessageContext messageContext) {
return true;
   }
项目:wise-webui    文件:ResponseLogHandler.java   
public boolean handleMessage(LogicalMessageContext smc) {
doLog(smc);
return true;
   }
项目:wise-webui    文件:ResponseLogHandler.java   
public boolean handleFault(LogicalMessageContext smc) {
doLog(smc);
return true;
   }
项目:dssp    文件:AttachmentsLogicalHandler.java   
@Override
public boolean handleFault(LogicalMessageContext context) {
    return true;
}