servicehandler1.java
来自「Java有关XML编程需要用到axis 的源代码 把里面bin下的包导入相应」· Java 代码 · 共 104 行
JAVA
104 行
package test.wsdl.jaxrpchandlereval;import javax.xml.rpc.handler.*;import javax.xml.soap.*;import javax.xml.namespace.*;import javax.xml.rpc.handler.soap.SOAPMessageContext;import javax.xml.rpc.JAXRPCException;public class ServiceHandler1 implements javax.xml.rpc.handler.Handler{ public ServiceHandler1() { System.out.println("ServiceHandler1:Constructor"); } public boolean handleRequest(MessageContext context) { System.out.println("ServiceHandler1:handleRequest"); try { SOAPMessageContext soapMsgCtx = (SOAPMessageContext)context; SOAPMessage soapMsg = soapMsgCtx.getMessage(); SOAPPart sp = soapMsg.getSOAPPart(); SOAPEnvelope se = sp.getEnvelope(); SOAPBody sb = se.getBody(); SOAPHeader sh = se.getHeader(); Name xmlServicesHandler1HdrName = se.createName("ServiceHandler1-handleRequest", "", ""); SOAPHeaderElement xmlServicesHandler1Hdr = sh.addHeaderElement(xmlServicesHandler1HdrName); xmlServicesHandler1Hdr.addTextNode( "Processed by ServiceHandler1Hdr1.handleRequest"); } catch (Exception ex) { throw new JAXRPCException(ex); } return true; } public boolean handleResponse(MessageContext context) { System.out.println("ServiceHandler1:handleResponse"); try { SOAPMessageContext soapMsgCtx = (SOAPMessageContext)context; SOAPMessage soapMsg = soapMsgCtx.getMessage(); SOAPPart sp = soapMsg.getSOAPPart(); SOAPEnvelope se = sp.getEnvelope(); SOAPBody sb = se.getBody(); SOAPHeader sh = se.getHeader(); Name xmlServicesHandler1HdrName = se.createName("ServiceHandler1-handleResponse", "", ""); SOAPHeaderElement xmlServicesHandler1Hdr = sh.addHeaderElement(xmlServicesHandler1HdrName); xmlServicesHandler1Hdr.addTextNode( "Processed by ServiceHandler1Hdr1.handleResponse"); sp.addMimeHeader("MY_MIME_HEADER", "ADDING A NEW HEADER IN SOAPPART"); } catch (Exception ex) { throw new JAXRPCException(ex); } return true; } public boolean handleFault(MessageContext context) { System.out.println("\nServiceHandler1:handleFault"); try { SOAPMessageContext soapMsgCtx = (SOAPMessageContext)context; SOAPMessage soapMsg = soapMsgCtx.getMessage(); SOAPPart sp = soapMsg.getSOAPPart(); SOAPEnvelope se = sp.getEnvelope(); SOAPBody sb = se.getBody(); SOAPHeader sh = se.getHeader(); Name xmlServicesHandler1HdrName = se.createName("ServiceHandler1-handleFault", "", ""); SOAPHeaderElement xmlServicesHandler1Hdr = sh.addHeaderElement(xmlServicesHandler1HdrName); xmlServicesHandler1Hdr.addTextNode( "Processed by ServiceHandler1Hdr1.handleFault"); soapMsgCtx.setMessage(soapMsg); } catch (Exception ex) { ex.printStackTrace(); } return true; } public void init(HandlerInfo config) { System.out.println("ServiceHandler1:init"); } public void destroy() { System.out.println("ServiceHandler1:destroy"); } public QName[] getHeaders() { System.out.println("ServiceHandler1:getHeaders"); return null; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?