You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Michael Oliver <ol...@sourceonenet.com> on 2005/05/26 20:43:19 UTC

client-config.wsdd revisited

I am having trouble with client-config.wsdd 

I found the following in the archives

---
Axis looks for client-config.wsdd in two places:

1) The current directory of the process

2) The classpath, in package org/apache/axis/client

Therefore if you put it at the root of your classpath, it won't find it
(that's a common mistake, and perhaps we should have it look there too).
If
it's in the directory from which you run your program, though, it should
find it just fine, likewise if it's in the right package on your
classpath
(which is why the version in axis.jar gets picked up if it can't find
another one).  We could also add some kind of debugging option to print
the
location of the client-config.wsdd which was found by a running
client....

---

Thanks Glen for that posting.

My client-config.wsdd looks like this...

<?xml version="1.0" encoding="UTF-8"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">  
	<handler name="log"
type="java:com.ajcs.salesforce.SOAPMonitor"/> 
	<globalConfiguration>
  		<requestFlow>
   			<handler type="log"/>
  		</requestFlow>
  		<responseFlow>
   			<handler type="log"/>
  		</responseFlow>
 	</globalConfiguration>
 	<transport name="http"
pivot="java:org.apache.axis.transport.http.HTTPSender"/>
 	<transport name="local"
pivot="java:org.apache.axis.transport.local.LocalSender"/>
</deployment>

I have a Tomcat webapp "AJCS" and I have tried locating the above in

/AJCS/WEB-INF/classes/org/apache/axis/client/client-config.wsdd
/AJCS/WEB-INF/client-config.wsdd

With no effect, I also put it in the same jar as the
com.ajcs.salesforce.SOAPMonitor class at
/org/apache/axis/client/client-config.wsdd

The logs show it is finding the jar in /AJCS/WEB-INF/lib/ 

The class is a simple log handler that looks like...

public class SOAPMonitor extends BasicHandler {
	private static Log log = LogFactory.getLog(SOAPMonitor.class);
	
	public void invoke(MessageContext msgContext) throws AxisFault {
		if (msgContext.getPastPivot()) {
			Message inMsg = msgContext.getRequestMessage();
			Message outMsg =
msgContext.getResponseMessage();

			if (inMsg != null) {
				log.debug("**********");
				log.debug(":::SOAP Request:::");
				log.debug("**********");
				log.debug(inMsg.getSOAPPartAsString());
			}

			if (outMsg != null) {
				log.debug("**********");
				log.debug(":::SOAP Response:::");
				log.debug("vvvvvvvvvvvvvvvvvv");
				log.debug(outMsg.getSOAPPartAsString());
				log.debug("^^^^^^^^^^^^^^^^^^");
			}
		}
	}

	public void undo(MessageContext msgContext) {
	}
}

So what else should I try?

Michael Oliver
CTO
Alarius Systems LLC
6800 E. Lake Mead Blvd, #1096
Las Vegas, NV 89156
Phone:(702)643-7425
Fax:(702)974-0341
*Note new email changed from oliverm@matrix-media.com