6 Replies Latest reply on Jun 11, 2015 3:02 PM by Mike Higgins

    WS-Security password callback class

    Mike Higgins Newbie

      This may be a jboss question rather than a Teiid one.  I am using a dynamic vdb to access a web service using teiid 8.8 and jboss 7.2.0 (with jbossws-cxf installed with spring). I am not using the designer, instead I defined the web service in DDL.  As long as there is no security, everything is fine.  Using a cxf file to add security to the web service call, I find I need to define a password callback handler.  But I don't know where to put the handler class for it to be found.

       

      In my cxf file, I have:

       

      <bean class="org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor"

                id="secure_request">

              <constructor-arg>

                  <map>

                      <entry key="action" value="UsernameToken" />

                      <entry key="user" value="user"/>

                      <entry key="passwordType" value="PasswordText" />

                      <entry key="passwordCallbackRef" value-ref="callbackbean"/>

                  </map>

              </constructor-arg>

          </bean>

       

          <bean id="callbackbean" class="com.tripos.websecurity.PasswordCallbackHandler"/>

       

       

      I get a ClassNotFoundException: com.tripos.websecurity.PasswordCallbackHandler from [Module "org.jboss.teiid.resource-adapter.webservice:main" from local module loader @9a6f43 (finder: local module finder @feaf9c (roots: f:\temp\mikeh\di_tools\8.0_Patch\jboss-as-7.2.0.Final\modules,f:\temp\mikeh\di_tools\8.0_Patch\jboss-as-7.2.0.Final\modules\system\layers\base))]

       

      The PasswordCallbackClass is defined in a jar file in my application, but apparently that is not sufficient.  So I need to put it in a jboss module?  Or a separate war file?

       

       

      Thanks for any help,

      Mike Higgins