You have to "engage" the module say in axis2.xml (see how we engage
the addressing module in the default axis2.xml)
thanks,
dims
On 7/5/07, Aristo Togliatti <[EMAIL PROTECTED]> wrote:
Hi!
I am trying to write a custom module fo Axis2 and so far I only managed to
get the INIT method to work, but nothing happen when I call the web service
that is supposed to invoke the modules 'invoke' method...
The handler:
import org.apache.axis2.AxisFault;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.engine.Handler;
import org.apache.axis2.handlers.AbstractHandler;
public class SimpleHandler extends AbstractHandler implements Handler {
private String name;
public String getName() {
return name;
}
public InvocationResponse invoke(MessageContext msgContext)
throws AxisFault {
System.out.println("Handler invoked");
System.out.println(msgContext.getAxisOperation().toString());
return InvocationResponse.CONTINUE;
}
public void revoke(MessageContext msgContext) {
// log.info(msgContext.getEnvelope().toString());
}
public void setName(String name) {
this.name = name;
}
}
The module
import java.security.Policy;
import org.apache.axis2.AxisFault;
import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.description.AxisDescription;
import org.apache.axis2.description.AxisModule;
import org.apache.axis2.modules.Module;
import org.apache.neethi.Assertion;
public class SimpleHandlerModule implements Module {
public void sayHello() {
}
public void init(ConfigurationContext configContext, AxisModule
module)
throws AxisFault {// Initialize
System.out.println("INIT MODULE");
// the
// module
}
public void shutdown(ConfigurationContext configurationContext)
throws AxisFault {
// End of module processing
}
public void engageNotify(AxisDescription axisDescription) throws
AxisFault {
}
public String[] getPolicyNamespaces() throws AxisFault {
return null;
}
public void applyPolicy(Policy policy, AxisDescription
axisDescription)
throws AxisFault {
}
public boolean canSupportAssertion(Assertion assertion) {
return true;
}
public void applyPolicy(org.apache.neethi.Policy arg0,
AxisDescription arg1) throws AxisFault {
// TODO Auto-generated method stub
}
}
module.xml
<module name="logging" class="SimpleHandlerModule">
<inflow>
<handler name="InFlowLogHandler" class="SimpleHandler">
<order phase="PreDispatch" />
</handler>
</inflow>
<outflow>
<handler name="OutFlowLogHandler" class="SimpleHandler">
<order phase="PreDispatch"/>
</handler>
</outflow>
</module>
services.xml
<service name="WSMonitor" scope="application">
<description>
</description>
<module ref="logging"/>
<messageReceivers>
<messageReceiver
mep="http://www.w3.org/2004/08/wsdl/in-only"
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
<messageReceiver
mep="http://www.w3.org/2004/08/wsdl/in-out"
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</messageReceivers>
<parameter name="ServiceClass">
TestWS
</parameter>
</service>
Thanks.
A.
--
Davanum Srinivas :: http://davanum.wordpress.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]