Hi all, this mail to inform you that the first version of WS-DM adapter is
working...of course it has many limitations but I think it's a good starting
point.
First thing is that in order to develop the adapter I need to add on the lib
directory the following jars:

***** JETTY LIBS *****
WSDM Adapter is a web application so (see the discussion about release
below) it needs a servlet engine where it can be deployed.

   - jetty-6.1.14.jar
   - jetty-util-6.1.14.jar
   - start.jar

***** JAVASSIST LIBS *****
Used for dynamic generation of the wsdm capability classes.

   - javassist.jar

***** APACHE MUSE LIBS *****
Used as WSRF engine.

   - muse-core-2.2.0.jar
   - muse-platform-mini-2.2.0.jar
   - muse-util-2.2.0.jar
   - muse-util-qname-2.2.0.jar
   - muse-util-xml-2.2.0.jar
   - muse-wsa-soap-2.2.0.jar
   - muse-wsdm-muws-adv-api-2.2.0.jar
   - muse-wsdm-muws-adv-impl-2.2.0.jar
   - muse-wsdm-muws-api-2.2.0.jar
   - muse-wsdm-muws-impl-2.2.0.jar
   - muse-wsdm-wef-api-2.2.0.jar
   - muse-wsdm-wef-impl-2.2.0.jar
   - muse-wsn-api-2.2.0.jar
   - muse-wsn-impl-2.2.0.jar
   - muse-wsrf-api-2.2.0.jar
   - muse-wsrf-impl-2.2.0.jar
   - muse-wsrf-rmd-2.2.0.jar
   - muse-wsx-api-2.2.0.jar
   - muse-wsx-impl-2.2.0.jar
   - wsdl4j-1.6.1.jar
   - xercesImpl-2.8.1.jar
   - xml-apis-1.3.03.jar


First of all let's have look at what is the result of the build + release
process.
It will create (under qpid/management/client/release) the following
structrure :

*.[release]
...[qpid-management-client-M4]
..........[bin]
..................qman-jmx-start.cmd
..................qman-jmx-start.sh
..................qman-wsdm-start.cmd
..................qman-wsdm-start.sh
..................qman-wsdm-stop.cmd
..................qman-wsdm-stop.sh
..........[etc]
..................jetty.xml
..................log4j.xml
..................qman-config.xml
..........[lib]
..................jetty-6.1.14.jar
..................jetty-util-6.1.14.jar
..................start.jar
..................geronimo-servlet_2.5_spec-1.2.jar
..................mina-core-1.0.1.jar
..................mina-filter-ssl-1.0.1.jar
..................qpid-client-M4.jar
..................qpid-common-M4.jar
..................qpid-management-client-M4.jar
..................qpid-systests-M4.jar
..................slf4j-api-1.4.0.jar
..................slf4j-log4j12-1.4.0.jar
..................log4j-1.2.12.jar
..................qman.war
..................commons-pool-1.4.jar
..........[log]
..................qman.log
..................server.log
...README
...DISCLAIMER
...LICENSE*

With the above structure the distribution is completely flexible because it
is possible to use QMan in three different ways:

*1) QMan JMX Bridge*
This is the first version I developed of QMan and that is at the moment part
of the M4. It acts as a JMX Bridge / Adapter exposing one or more Qpid
brokers Domain model via JMX;
This should be used as a simple standalone application when you have only
Java clients.

It is using the following libraries :

   - lib/qpid-management-client-M4.jar
   - lib/qpid-client-M4.jar
   - lib/qpid-common-M4.jar
   - lib/mina-core-1.0.1.jar
   - lib/mina-filter-ssl-1.0.1.jar
   - lib/slf4j-api-1.4.0.jar
   - lib/slf4j-log4j12-1.4.0.jar
   - lib/log4j-1.2.12.jar
   - lib/commons-pool-1.4.jar

the following configuration files :

   - etc/log4j.xml
   - etc/qman-config.xml

the following log :

   - log/qman.log

To start this distribution simply run bin/qman-jmx-start.cmd or
bin/qman-jmx-start.sh. q to quit.

*2)  QMan WSDM Adapter
*This is a complete application which enables WS-DM capabilities (and
includes the JMX adapter).
Clients can be any WS-DM enabled client (Patrol, OpenView, etc...) : Note
that even the JMX adapter is included in this version, it is internally used
and not exposed.
This is the distribution that should be used when you don't want worry about
deploymets, software distribution, simply etc... simply starts
qman-wsdm-start and that's all!

It is using the following libraries :

   - lib/start.jar
   - lib/jetty-6.1.14.jar
   - lib/jetty-util-6.1.14.jar
   - lib/geronimo-servlet_2.5_spec-1.2.jar
   - lib/qman.war
   - lib/slf4j-api-1.4.0.jar
   - lib/slf4j-log4j12-1.4.0.jar
   - lib/log4j-1.2.12.jar

,the following configuration files :

   - etc/log4j.xml
   - etc/qman-config.xml
   - etc/jetty.xml

,the following log :

   - log/qman.log : QMan WSDM log
   - log/server.log : Servlet engine (Jetty) log.

To start this distribution run

   - bin/qman-wsdm-start.cmd
   - bin/qman-wsdm-start.sh

To stop

   - bin/qman-wsdm-stop.cmd
   - bin/qman-wsdm-stop.sh

*3) QMan WSDM Distribuitable web application*
As said before, QMan WSDM Adapter is a standard web application, It is found
under lib folder with the name qman.war.
This can be deployed under any J2EE (1.4 higher) compliant Application
Server.
I think that in the wiki we should document this option too because it fits
perfect in all scenarios when

   - There's already an Application Server (IBM WebSphere, JBoss, Oracle
   WebLogic, etc)...
   - Users don't want start an additional web server to run the adapter;

In this scenario the result will be the same of the point 2). Note that
there is something that needs to be configured externally :

   - Servlet engine : vendor specific;
   - Logging : vendor specific, for example on JBoss you need to configure
   the jboss-log4j.xml under the conf directory;
   - QMan config : the -Dqman-config option must be added at the server
   startup command line....otherwise it's possibile to connect QMan later at
   runtime...

But ok, we are using another application server and this is part of a usual
"assembly & deploy" procedure... :)

******* HOW THINGS ARE WORKING *********
For this topics I'd prefer update the online documentation instead of
annoying you with a huge mail... :)
*
****** OPEN POINTS *********
There are a lot of open points...here are some of them:

   - Method invocation (via WS-DM) is not completed;
   - Dynamic generation of WSDL and capabilities must be improved (caching,
   etc...);
   - Implementation of WS-Notification for WS Suscribers;
   - Test case suite;
   - Management console for WS-DM Adapter : note that is not a Qpid
   Management Console but a QMan dedicated console. Here you can view the
   WS-Resources, their wsdl, their WSDM interfaces, their JMX interfaces or for
   example you can change at runtime logging settings, etc....I started that
   but it is in a very primordial state...
   - ...etc ...etc...but I'll write a completed list on the wiki...


*Now, the questions :*

I played a lot with wiki and subversion (without commit, just two tests) and
I'd be ready to commit but I have two questions (sorry if they are stupid)

1) Could I update the wiki with the documentation of things above? I'm
asking that because I think that all this stuff should be part of M5 and the
wiki that I'm reading on the web site I suppose is referring to M4 isn't it?
2) Moreless the same problem for the software...I developed all things above
starting from the trunk...If I submit my changes those will be part of M4
isn't it? and if so I think is wrong isn't it?

Let me know

Best regards,
Andrea

Reply via email to