Search in sources :

Example 6 with PortComponentHandlerType

use of org.apache.cxf.jaxws.handler.types.PortComponentHandlerType in project cxf by apache.

the class HandlerChainBuilderTest method testBuilderCallsInit.

@Test
public void testBuilderCallsInit() {
    List<PortComponentHandlerType> hc = createHandlerChainType();
    hc.remove(3);
    hc.remove(2);
    hc.remove(1);
    PortComponentHandlerType h = hc.get(0);
    List<ParamValueType> params = h.getInitParam();
    ParamValueType p = new ParamValueType();
    CString pName = new CString();
    pName.setValue("foo");
    p.setParamName(pName);
    XsdStringType pValue = new XsdStringType();
    pValue.setValue("1");
    p.setParamValue(pValue);
    params.add(p);
    p = new ParamValueType();
    pName = new CString();
    pName.setValue("bar");
    p.setParamName(pName);
    pValue = new XsdStringType();
    pValue.setValue("2");
    p.setParamValue(pValue);
    params.add(p);
    List<Handler> chain = builder.buildHandlerChainFromConfiguration(hc);
    assertEquals(1, chain.size());
    TestLogicalHandler tlh = (TestLogicalHandler) chain.get(0);
    assertTrue(tlh.initCalled);
    Map cfg = tlh.config;
    assertNotNull(tlh.config);
    assertEquals(2, cfg.keySet().size());
    assertEquals("1", cfg.get("foo"));
    assertEquals("2", cfg.get("bar"));
}
Also used : ParamValueType(org.apache.cxf.jaxws.handler.types.ParamValueType) XsdStringType(org.apache.cxf.jaxws.handler.types.XsdStringType) LogicalHandler(javax.xml.ws.handler.LogicalHandler) Handler(javax.xml.ws.handler.Handler) PortComponentHandlerType(org.apache.cxf.jaxws.handler.types.PortComponentHandlerType) Map(java.util.Map) CString(org.apache.cxf.jaxws.handler.types.CString) Test(org.junit.Test)

Example 7 with PortComponentHandlerType

use of org.apache.cxf.jaxws.handler.types.PortComponentHandlerType in project cxf by apache.

the class JavaeeHandlerChainBuilder method processHandlerElement.

void processHandlerElement(Element el, List<Handler> chain) {
    try {
        JAXBContext ctx = getContextForPortComponentHandlerType();
        PortComponentHandlerType pt = JAXBUtils.unmarshall(ctx, el, PortComponentHandlerType.class).getValue();
        chain.addAll(delegate.buildHandlerChain(pt));
    } catch (JAXBException e) {
        throw new IllegalArgumentException("Could not unmarshal handler chain", e);
    }
}
Also used : JAXBException(javax.xml.bind.JAXBException) JAXBContext(javax.xml.bind.JAXBContext) PortComponentHandlerType(org.apache.cxf.jaxws.handler.types.PortComponentHandlerType)

Aggregations

PortComponentHandlerType (org.apache.cxf.jaxws.handler.types.PortComponentHandlerType)7 JAXBContext (javax.xml.bind.JAXBContext)3 JAXBException (javax.xml.bind.JAXBException)3 CString (org.apache.cxf.jaxws.handler.types.CString)3 Test (org.junit.Test)3 Map (java.util.Map)2 Handler (javax.xml.ws.handler.Handler)2 LogicalHandler (javax.xml.ws.handler.LogicalHandler)2 FullyQualifiedClassType (org.apache.cxf.jaxws.handler.types.FullyQualifiedClassType)2 ParamValueType (org.apache.cxf.jaxws.handler.types.ParamValueType)2 ArrayList (java.util.ArrayList)1 WebServiceException (javax.xml.ws.WebServiceException)1 XsdStringType (org.apache.cxf.jaxws.handler.types.XsdStringType)1