Ah, I didn't realize you wanted a GUI view of the messages. You could
modify the sample-logging code to do this, though, either by dumping the
message to a file and using a separate application to view the file, or
by adding a window to your application and having the sample-logging
code send the message text to that each time the module is called.
If you look at the instructions for the logging module example you'll
see they discuss adding the custom "loggingPhase" to each of the message
flows defined in axis2.xml. To do this on the client side without using
a repository you'd need to make the change in the axis2.xml file
contained in the axis2-kernel-X.X.X.jar. You should also be able to do
it by adding an axis2.xml in your classpath ahead of the axis2 jars to
substitute for the one in the jar, though I haven't tried this. Or you
can just change the logging module.xml to use phases already defined in
the existing axis2.xml (such as "soapmonitorPhase"), rather than
"loggingPhase".
- Dennis
Joe Smithian wrote:
1- I already have log4j configured in my client and as I said in my
original message I can see the soap request and response messages in
the log files, what I need is to display them in a GUI windowo in
real-time. Can logging.mar be used for this purpose?
2- I copied logging.mar to the Axis2 ./repository/modules folder and
changed 'logging' to 'sample-logging' in my client:
stub._getServiceClient().engageModule("*sample-logging*"); and this
time I got this error:
*Did not find the desired phase 'loggingPhase' while deploying handler
'InFlowLogHandler'.*
and these are the log4j messages:
DEBUG AWT-EventQueue-0 org.apache.axis2.engine.Phase - Handler
RequestURIOperationDispatcher added to Phase Dispatch
DEBUG AWT-EventQueue-0 org.apache.axis2.engine.Phase - Handler
SOAPMessageBodyBasedDispatcher added to Phase Dispatch
DEBUG AWT-EventQueue-0 org.apache.axis2.engine.Phase - Handler
HTTPLocationBasedDispatcher added to Phase Dispatch
INFO AWT-EventQueue-0 org.apache.axis2.deployment.util.Utils - Created
temporary file : /tmp/_axis2/axis2428751690649774027logging.mar
DEBUG AWT-EventQueue-0 org.apache.axiom.om.util.StAXUtils -
XMLStreamReader is com.ctc.wstx.sr.ValidatingStreamReader
DEBUG AWT-EventQueue-0 org.apache.axis2.i18n.ProjectResourceBundle -
getBundle(org.apache.axis2,org.apache.axis2.i18n,resource,null,...)
DEBUG AWT-EventQueue-0 org.apache.axis2.i18n.ProjectResourceBundle -
loadBundle: Ignoring MissingResourceException: Can't find bundle for
base name org.apache.axis2.resource, locale en_US
DEBUG AWT-EventQueue-0 org.apache.axis2.i18n.ProjectResourceBundle -
Created org.apache.axis2.i18n.resource, linked to parent null
DEBUG AWT-EventQueue-0 org.apache.axis2.i18n.ProjectResourceBundle -
getBundle(org.apache.axis2,org.apache.axis2.i18n,resource,null,...)
DEBUG AWT-EventQueue-0 org.apache.axis2.i18n.ProjectResourceBundle -
org.apache.axis2.i18n.resource::handleGetObject(addingnewmodule)
DEBUG AWT-EventQueue-0 org.apache.axis2.deployment.DeploymentEngine -
Adding new module
DEBUG AWT-EventQueue-0 org.apache.axis2.i18n.ProjectResourceBundle -
org.apache.axis2.i18n.resource::handleGetObject(deployeingmodule)
INFO AWT-EventQueue-0 org.apache.axis2.deployment.ModuleDeployer -
Deploying module: sample-logging
DEBUG AWT-EventQueue-0 org.apache.axis2.i18n.ProjectResourceBundle -
org.apache.axis2.i18n.resource::handleGetObject(invalidphase)
Thanks again for your help.
Joe
On Mon, Apr 20, 2009 at 6:48 AM, Dennis Sosnoski <[email protected]
<mailto:[email protected]>> wrote:
I don't think that adding it to the manifest will work, but if you
explicitly include the .mar in your runtime classpath that should
do it (assuming the .mar has been properly constructed).
You'll need to have logging enabled in your client in order to
make use of the logging module. To do this, create a file named
log4j.properties in any convenient location, then add the
directory of that file to your runtime classpath. The directory
needs to precede the Axis2 jars or any other jars that might have
their own log4j.properties. To work with the logging module you'll
need to have something like the following for the content:
# direct log messages to stdout #
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p
%c{1}:%L - %m%n
# change logging level here.
log4j.rootLogger=info, stdout
If you still have problems with loading the logging module you can
try changing "info" in the above line to "debug" and see if the
resulting output gives you any hints as to why the logging module
is failing to load.
- Dennis
Joe Smithian wrote:
Hi Dennis,
Thanks for your suggestions. I built logging.mar in my
axis2/samples/userguide using 'ant generate.module' then
copied it to my client's lib directory and added it to it's
manifest file, recompiled and ran the client, still gives the
error: "Unable to engage module : logging".
Any idea what might be wrong?
Thanks again.
Joe.
On Sat, Apr 18, 2009 at 2:12 AM, Dennis Sosnoski
<[email protected] <mailto:[email protected]>
<mailto:[email protected] <mailto:[email protected]>>> wrote:
Hi Joe,
Try including the logging.mar in your classpath. You can
also use a
repository structure on the client side, but the classpath
approach is
easier.
Cheers,
- Dennis
-- Dennis M. Sosnoski
SOA and Web Services in Java
Axis2 Training and Consulting
http://www.sosnoski.com - http://www.sosnoski.co.nz
Seattle, WA +1-425-939-0576 - Wellington, NZ +64-4-298-6117
Joe Smithian wrote:
Hi Asen,
Thanks for your suggestions. My client is based on
wsdl2java
stub, I tried
stub._getServiceClient().engageModule("logging"); as you
suggested and I got this error: Unable to engage
module : logging
What else I should do to engage logging module? should I
download and install logging module?
How can I use the logging module to monitor soap
messages once
it is engaged? Does it log to a file?
I'd appreciate it if you can answer my question or
refer me to
online documents/examples.
Thanks
Joe
On Fri, Apr 17, 2009 at 9:02 AM, Asen
<[email protected] <mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>
<mailto:[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>>> wrote:
I agree.
If you use Axis2 client, first build your logging.mar.
If you are using your wsdl2java stubs you can do
stub._getServiceClient().engageModule("logging");
On Thu, Apr 16, 2009 at 11:33 PM, Sukma Agung Verdianto
<[email protected] <mailto:[email protected]>
<mailto:[email protected] <mailto:[email protected]>>
<mailto:[email protected] <mailto:[email protected]>
<mailto:[email protected] <mailto:[email protected]>>>> wrote:
I think you can engage logging module from your
client if
you're using axis as the client.
On Fri, Apr 17, 2009 at 7:59 AM, Joe Smithian
<[email protected]
<mailto:[email protected]> <mailto:[email protected]
<mailto:[email protected]>>
<mailto:[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>>> wrote:
Hi Robert,
Logging Module is also a server side
solution; I need a
solution in the client without any change or
installing
anything in the server.
Thanks.
Joe.
On Wed, Apr 15, 2009 at 8:47 AM, robert lazarski
<[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>
<mailto:[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>>> wrote:
On Wed, Apr 15, 2009 at 9:44 AM, robert
lazarski
<[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>
<mailto:[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>>> wrote:
> On Tue, Apr 14, 2009 at 11:25 PM, Joe
Smithian
<[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>
<mailto:[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>>> wrote:
>> Hi all,
>>
>> Can any one please let me know how
can I display
SOAP request and response
>> messages in a SOAP AXIS2 Client GUI
application?
>
> Umm, the soap monitor perhaps?
>
>
http://ws.apache.org/axis2/1_4_1/soapmonitor-module.html
>
> There's also tcpmon:
>
> https://tcpmon.dev.java.net/
>
> - R
>
Oops, I'm just waking up and I just
noticed you
can't
use either of
those. Maybe try the Logging Module and
get the
info
you need from
there.
http://ws.apache.org/axis2/1_4/modules.html
- R