deployment

2002-01-11 Thread Gottfried Szing

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1


hi

for the next project i am working on i am evaluating the
currently available soap implementations. because we are using
unix as a host system and we are working in a pure-java
environment i am looking especially for java impls of soap. also
it should incooperate with jboss or hp bluestone.

and there are only a few impls available. glue (hm, to heavy for
us), axis (still alpha), and soap4j (based on the xml soap). so
there is only the apache soap in the list for evaluation.

so i have downloaded the apache soap 2.2 and jboss 2.4.4 with
tomcat 4.0.1 and followed the installation instructions. also
tried the samples and everything seemed to be fine.

but i have still one big problem: the services currently in use
have been deployed with the interactive deployer tool or with the
admin web page. but this is not very useful if this is a
production environment and everything should happen
automagically. and the use of a command line tool is not very
automagically.

is there no way about defining the services in a deplyment
descriptor or a configuration file? the binary
deployedservices.ds is IMHO not a solution.

and the other not so urgent question: why have the service
classes to be in the classpath and on the other hand happens the
deployment dynamically? i think this a problem in the concept of
the soap implementation.

any ideas?

TIA, goofy
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.0.4 (GNU/Linux)
Comment: For info see http://www.gnupg.org
Filter: gpg4pine 4.1 (http://azzie.robotics.net)

iD8DBQE8PtfRrMda10jkyDYRAvsgAKCSljvXrnkfLS+37No5vzkvMyl/hQCaA5oe
UwT6A4rcePEjDyZ8uoMaTfI=
=d5a1
-END PGP SIGNATURE-




SOAP over MQ Series

2002-01-11 Thread Mark Hansen

Please help - any one with any information.  I am
writing a book for Prentice Hall and need to include
examples of SOAP running over MQSeries (or JMS) rather
than HTTP.

I'm trying to work with IBM's MA88: MQSeries Classes
for Java, but can't get the software to run.

Please let me know if you have any expreience with
MQSeries Classes for Java - or know anyone who does.

Also, if you know of another way to run SOAP over MQ,
please let me know.

My environmenment is:

J2EE Server:  Sun J2SDKEE1.3 (reference
implementation)
JDK:  Sun JDK1.3.1_01
SOAP: Apache 2.2
OS:   Win 2K Pro

TIA,

Mark Hansen
tel (888)-360-7285
email: [EMAIL PROTECTED]


=


__
Do You Yahoo!?
Send FREE video emails in Yahoo! Mail!
http://promo.yahoo.com/videomail/



Soap questions.

2002-01-11 Thread Sandeep Heer

I have a couple of questions about SOAP.

I want to use SOAP messages (using envelopes etc. not SOAP-RPC).

So,

1. I have the following line to receive SOAP messages:

BufferedReader resReader = transport.receive()

What if there is no message, what happens? Also, do i need to do
transport.receive() to receive each message as i might get more than
one?  If i am going to receive a large amount of messages, would it be
better to have this code in a new thread or get the SOAP message and
then process it in a new thread?

2. I have this bit of code to send some XML back in a SOAP message.
StringWriter writer = new StringWriter();
   env.marshall(writer, null);
   res.setRootPart(writer.toString(), text/xml);

It seems to me that the above code is simply sending a blank
StringWriter object?

Thanks in advance,

   Sandeep.





-
 
 E-mail Confidentiality Notice and Disclaimer
 
  This email and any files transmitted with it are confidential and are intended 
solely for the use of the individual or entity to which they are addressed. Access to 
this e-mail by anyone else is unauthorised. If you are not the intended recipient, any 
disclosure, copying, distribution or any action taken or omitted to be taken in 
reliance on it, is prohibited. 
  E-mail messages are not necessarily secure.  Hitachi does not accept responsibility 
for any changes made to this message after it was sent. 
  Please note that Hitachi checks outgoing e-mail messages for the presence of 
computer viruses.
 
-




Deserialize a complicated fault object

2002-01-11 Thread Moritz Hammer

Hello everybody,

I'm trying to send a complex exception using SOAPs fault handler. This
exception contains various data (so the Exception supports
getLocalizedMessage() in various languages). It was easy to get this
message serialized by extending ExceptionFaultListener, but I did not
find an easy way to reconstruct the Exception again. Writing a
deserializer all on my own seems quite much work and a complete waste of
time, since there are deserializers - but how can I access them? I've
written deserializers implementing the Deserializer interface, but I do
not know how to write one without those helping objects like
XMLJavaMappingRegistry.

Thanks,
  Moritz
(MGM-EDV Beratung, Munich, Germany)




RE: SOAP over MQ Series

2002-01-11 Thread Mahendra Chheda

Bill, 

I am glad to read you have covered SOAP over SwiftMQ. I have placed an order
for your book. 

Does your book also cover interop of complex datatypes such as objects,
files esp between Apache SOAP server and MSFT clients.

Mahendra
 
 


-Original Message-
From: William Brogden [mailto:[EMAIL PROTECTED]]
Sent: Friday, January 11, 2002 8:07 AM
To: [EMAIL PROTECTED]
Subject: RE: SOAP over MQ Series


 -Original Message-
 From: Mark Hansen [mailto:[EMAIL PROTECTED]] 
 Sent: Friday, January 11, 2002 10:00 AM
 To: [EMAIL PROTECTED]
 Subject: SOAP over MQ Series
 
 
 Please help - any one with any information.  I am
 writing a book for Prentice Hall and need to include
 examples of SOAP running over MQSeries (or JMS) rather
 than HTTP.
 
 I'm trying to work with IBM's MA88: MQSeries Classes
 for Java, but can't get the software to run.
 
 Please let me know if you have any expreience with
 MQSeries Classes for Java - or know anyone who does.

My SOAP book (out next week) has an example of SOAP
using JMS - I used the SwiftMQ version from this page:
http://www.swiftmq.com/download/index.html


 
 Also, if you know of another way to run SOAP over MQ,
 please let me know.
 
 My environmenment is:
 
 J2EE Server:  Sun J2SDKEE1.3 (reference
 implementation)
 JDK:  Sun JDK1.3.1_01
 SOAP: Apache 2.2
 OS:   Win 2K Pro
 
 TIA,
 
 Mark Hansen
 tel (888)-360-7285
 email: [EMAIL PROTECTED]
 
 
 =
 
 

[EMAIL PROTECTED]
Author of Soap Programming with Java - Sybex; ISBN: 0782129285






RE: Deserialize a complicated fault object

2002-01-11 Thread Chris Means

Don't be scared of serializers/deserializers.

They're easy, and worth it for the extra control they provide.

Try one with a simple object with one property.

Just a suggestion.

-Chris

 -Original Message-
 From: Moritz Hammer [mailto:[EMAIL PROTECTED]]
 Sent: Friday, January 11, 2002 12:09 PM
 To: [EMAIL PROTECTED]
 Subject: Deserialize a complicated fault object
 
 
 Hello everybody,
 
 I'm trying to send a complex exception using SOAPs fault handler. This
 exception contains various data (so the Exception supports
 getLocalizedMessage() in various languages). It was easy to get this
 message serialized by extending ExceptionFaultListener, but I did not
 find an easy way to reconstruct the Exception again. Writing a
 deserializer all on my own seems quite much work and a complete waste of
 time, since there are deserializers - but how can I access them? I've
 written deserializers implementing the Deserializer interface, but I do
 not know how to write one without those helping objects like
 XMLJavaMappingRegistry.
 
 Thanks,
   Moritz
 (MGM-EDV Beratung, Munich, Germany)
 



Weblogic 6.1 SP2 accessing an EJB in an EAR

2002-01-11 Thread Michael J. Hudson


I originally had Apache SOAP 2.2 working just fine with Weblogic
5.1... and there, it was successfully accessing a stateful session 
bean.  Now, after a series of problems trying to upgrade to Weblogic
6.1, I have one last problem and I think things will work again.
BTW, I'm using Weblogic 6.1 SP2.  

My current problem is that the SOAP stuff can't seem to find my stateful 
session bean anymore.

I get the following error:

ECHO Fri Jan 11 14:53:16 EST 2002:E Generated fault:
ECHO Fri Jan 11 14:53:16 EST 2002:E   Fault Code   = SOAP-ENV:Server
ECHO Fri Jan 11 14:53:16 EST 2002:E   Fault String = Error in
connecting to EJB
java.lang.ClassNotFoundException:
org.myapp.services.ejb.sessionmanager.SessionManagerHome

I have my application wrapped in an EAR file.  And thus, all my
EJBs are in that EAR file... and thus my SessionManager bean is and 
does NOT need to be my classpath.

At first, I figured the problem was that I needed to modify the web.xml
so that the ejb-ref-name points to my sessionmanager... and likewise 
also create weblogic.xml that tied the web.xml's ejb-ref-name to 
the actual JNDI name.  I thought that would do it... but no such luck.  

Am I missing something.  Is there some other trick in telling an 
outside web app like Apache SOAP where my EAR is... or how to obtain
an EJB in my EAR?

Thanks

-
Michael J. Hudson
Software/Framework Engineer
[EMAIL PROTECTED]

cell-phone: 703.362.8039
voice-mail: 703.827.0638 ext. 4786
fax: 703.734.0987

Blueprint Technologies
Great software starts with great architecture
http://www.blueprinttech.com



RE: Why write a serializer/deserializer ??

2002-01-11 Thread Chris Means
Title: Why write a serializer/deserializer ??



My 
reasons are:

1) I didn't want to "serialize" all properties of 
my objects.

2) I think the BeanSerializer is case sensitive 
for property names, and I'm working with clients developed in other languages 
that aren't.

3) I wanted to have complete control and 
understand exactly what was going on g


  -Original Message-From: Jamie Tsao 
  [mailto:[EMAIL PROTECTED]]Sent: Friday, January 11, 2002 4:04 
  PMTo: [EMAIL PROTECTED]Subject: Why write a 
  serializer/deserializer ??
  Hi, 
  Sorry for my ignorance as I'm a new-comer to 
  SOAP. I've been reading the documentation on Apache's SOAP 
  implementation and was wondering why you would write a serializer/deserializer 
  when you could just use the BeanSerializer. It seems to be able to 
  handle any java bean.
  Is there any reason a java bean wouldn't work with 
  the BeanSerializer ? Any reason why you wouldn't use a java bean 
  ? 
  I know I'm obviously missing something, but it 
  would be great if someone could tell me what it is. 
  Thanks. 


RE: Weblogic 6.1 SP2 accessing an EJB in an EAR

2002-01-11 Thread John Prout

Can you access your SessionManager EJB from something other than the SOAP
servlet ?

(i.e is this a problem with the SOAP servlet configuration, or with the
deployment of your SessionManager EJB ?)

-Original Message-
From: Michael J. Hudson [mailto:[EMAIL PROTECTED]]
Sent: Friday, January 11, 2002 12:48 PM
To: [EMAIL PROTECTED]
Subject: Weblogic 6.1 SP2 accessing an EJB in an EAR



I originally had Apache SOAP 2.2 working just fine with Weblogic
5.1... and there, it was successfully accessing a stateful session
bean.  Now, after a series of problems trying to upgrade to Weblogic
6.1, I have one last problem and I think things will work again.
BTW, I'm using Weblogic 6.1 SP2.

My current problem is that the SOAP stuff can't seem to find my stateful
session bean anymore.

I get the following error:

ECHO Fri Jan 11 14:53:16 EST 2002:E Generated fault:
ECHO Fri Jan 11 14:53:16 EST 2002:E   Fault Code   = SOAP-ENV:Server
ECHO Fri Jan 11 14:53:16 EST 2002:E   Fault String = Error in
connecting to EJB
java.lang.ClassNotFoundException:
org.myapp.services.ejb.sessionmanager.SessionManagerHome

I have my application wrapped in an EAR file.  And thus, all my
EJBs are in that EAR file... and thus my SessionManager bean is and
does NOT need to be my classpath.

At first, I figured the problem was that I needed to modify the web.xml
so that the ejb-ref-name points to my sessionmanager... and likewise
also create weblogic.xml that tied the web.xml's ejb-ref-name to
the actual JNDI name.  I thought that would do it... but no such luck.

Am I missing something.  Is there some other trick in telling an
outside web app like Apache SOAP where my EAR is... or how to obtain
an EJB in my EAR?

Thanks

-
Michael J. Hudson
Software/Framework Engineer
[EMAIL PROTECTED]

cell-phone: 703.362.8039
voice-mail: 703.827.0638 ext. 4786
fax: 703.734.0987

Blueprint Technologies
Great software starts with great architecture
http://www.blueprinttech.com




Re: Weblogic 6.1 SP2 accessing an EJB in an EAR

2002-01-11 Thread Michael J. Hudson


Yes, I have a JSP within the EAR that calls the SessionManager EJB
through RMI.  And that works.

I guess the real question is... has anyone else done this type of 
thing with my configuration?  Specifically, Apache SOAP 2.2 with
Weblogic 6.1 SP2 where the SOAP is trying to access a stateful
session bean that resides in an EAR that is independent of the 
SOAP app.  

Right now, I'm thinking that I might just stop trying to make this
work... and just WAR up the whole Apache SOAP 2.2 stuff, and include
that INSIDE my EAR.  

John Prout wrote:
 
 Can you access your SessionManager EJB from something other than the SOAP
 servlet ?
 
 (i.e is this a problem with the SOAP servlet configuration, or with the
 deployment of your SessionManager EJB ?)
 
 -Original Message-
 From: Michael J. Hudson [mailto:[EMAIL PROTECTED]]
 Sent: Friday, January 11, 2002 12:48 PM
 To: [EMAIL PROTECTED]
 Subject: Weblogic 6.1 SP2 accessing an EJB in an EAR
 
 I originally had Apache SOAP 2.2 working just fine with Weblogic
 5.1... and there, it was successfully accessing a stateful session
 bean.  Now, after a series of problems trying to upgrade to Weblogic
 6.1, I have one last problem and I think things will work again.
 BTW, I'm using Weblogic 6.1 SP2.
 
 My current problem is that the SOAP stuff can't seem to find my stateful
 session bean anymore.
 
 I get the following error:
 
 ECHO Fri Jan 11 14:53:16 EST 2002:E Generated fault:
 ECHO Fri Jan 11 14:53:16 EST 2002:E   Fault Code   = SOAP-ENV:Server
 ECHO Fri Jan 11 14:53:16 EST 2002:E   Fault String = Error in
 connecting to EJB
 java.lang.ClassNotFoundException:
 org.myapp.services.ejb.sessionmanager.SessionManagerHome
 
 I have my application wrapped in an EAR file.  And thus, all my
 EJBs are in that EAR file... and thus my SessionManager bean is and
 does NOT need to be my classpath.
 
 At first, I figured the problem was that I needed to modify the web.xml
 so that the ejb-ref-name points to my sessionmanager... and likewise
 also create weblogic.xml that tied the web.xml's ejb-ref-name to
 the actual JNDI name.  I thought that would do it... but no such luck.
 
 Am I missing something.  Is there some other trick in telling an
 outside web app like Apache SOAP where my EAR is... or how to obtain
 an EJB in my EAR?
 
 Thanks
 
 -
 Michael J. Hudson
 Software/Framework Engineer
 [EMAIL PROTECTED]
 
 cell-phone: 703.362.8039
 voice-mail: 703.827.0638 ext. 4786
 fax: 703.734.0987
 
 Blueprint Technologies
 Great software starts with great architecture
 http://www.blueprinttech.com



Exception Handling/Error Reporting

2002-01-11 Thread George Voronoff

I'm a soap Newbie and I have some questions about soap and error reporting.

lets say I have a server side method:

public Address getAddressFromName(String name) throws IllegalArgumentException
  {
if (name == null)
{
  throw new IllegalArgumentException(The name argument must not be  + null.);
}

return (Address)name2AddressTable.get(name);
  }

This method was copied directly from the address book example. 
If name is null the server throws an IllegalArgumenException, and and the response 
Fault looks like:

Generated fault:
  Fault Code   = SOAP-ENV:Server
  Fault String = Exception from service object: The name argument must not be null.

NOW, If I call the invoke() again (on the same Call ojbect) I get a different fault.

Generated fault:
  Fault Code   = SOAP-ENV:Server.BadTargetObjectURI
  Fault String = Unable to determine object id from call: is the method element 
namespaced?

It seems to me that throwing the first exception from a server side method caused 
something bad to
happen to the Call object.  As such, do I need to avoid throwing server side 
exceptions at all costs if
I want to reuse the same Call object?

Is it good practice to avoid throwing server side exceptions in the first place?

Finally, can someone point to to any documentation that discusses implementiing 
reporting of 
server side errors.

 George Voronoff
 Senior Software Engineer (Net Hack)
 Grassroots Enterprise, Inc
 
 
 



How are you handling dates?

2002-01-11 Thread Chris Means

It seems as though the java.util.Date class is serializing dates in the
local time zone, rather than the depicted Zulu time (GMT/UTC).

Is anyone else doing Apache-SOAP development where they have to handle time
zone issues?

I'm storing everything in the backend database in GMT, so the middle tier
expects to send and recieve all date/times in GMT.

It's a client function to convert to the locale time if they need to.

My problem is that unless I set the middle tier machine's time zone to GMT,
dates keep on getting serialized into CST (my local time zone).

Can anyone shed any light on this?

TIA.

-Chris




WSDL , Apache Soap question

2002-01-11 Thread Raghavan Srinivasan

I have a Apache Web service one of whose methods  takes in
java.util.Hashtable as a parameter . I understand that the Apache
Toolkit supports Hashtable encoding . But i want to write a WSDL
interface to this service that toolkits from other languages could use
to generate stubs .

I could'nt find the right schema element to represent a structure
similar to Map / Hashtable .

I used the Idoox java2wsdl utility to see what the utility generates and
it came up with ns0:Hashtable
where ns0 = http://xml.apache.org/xml-soap .

This is obviously Apache specific and I dont know how compilers from
other languages will interpret it .

 Has anyone else faced a similar issue ?

Thanks -
Raghavan





Re: Weblogic 6.1 SP2 accessing an EJB in an EAR

2002-01-11 Thread Michael J. Hudson


Finally got it to work.. but not the way I really wished it would
have worked.

Like I said below... I ended up WAR-ing up the whole Apache 2.2
stuff and included it inside my EAR as SOAP.WAR

I put the soap.jar at the root level in my EAR (same level as my
EJB jars).  

Then I wrote a manifest.mf file that said Class-Path: soap.jar
and included that in the appropriate place in my SOAP.WAR

Now everything works! But not quite how Apache has one installing
their SOAP stuff.

-Michael

Michael J. Hudson wrote:
 
 Yes, I have a JSP within the EAR that calls the SessionManager EJB
 through RMI.  And that works.
 
 I guess the real question is... has anyone else done this type of
 thing with my configuration?  Specifically, Apache SOAP 2.2 with
 Weblogic 6.1 SP2 where the SOAP is trying to access a stateful
 session bean that resides in an EAR that is independent of the
 SOAP app.
 
 Right now, I'm thinking that I might just stop trying to make this
 work... and just WAR up the whole Apache SOAP 2.2 stuff, and include
 that INSIDE my EAR.
 
 John Prout wrote:
 
  Can you access your SessionManager EJB from something other than the SOAP
  servlet ?
 
  (i.e is this a problem with the SOAP servlet configuration, or with the
  deployment of your SessionManager EJB ?)
 
  -Original Message-
  From: Michael J. Hudson [mailto:[EMAIL PROTECTED]]
  Sent: Friday, January 11, 2002 12:48 PM
  To: [EMAIL PROTECTED]
  Subject: Weblogic 6.1 SP2 accessing an EJB in an EAR
 
  I originally had Apache SOAP 2.2 working just fine with Weblogic
  5.1... and there, it was successfully accessing a stateful session
  bean.  Now, after a series of problems trying to upgrade to Weblogic
  6.1, I have one last problem and I think things will work again.
  BTW, I'm using Weblogic 6.1 SP2.
 
  My current problem is that the SOAP stuff can't seem to find my stateful
  session bean anymore.
 
  I get the following error:
 
  ECHO Fri Jan 11 14:53:16 EST 2002:E Generated fault:
  ECHO Fri Jan 11 14:53:16 EST 2002:E   Fault Code   = SOAP-ENV:Server
  ECHO Fri Jan 11 14:53:16 EST 2002:E   Fault String = Error in
  connecting to EJB
  java.lang.ClassNotFoundException:
  org.myapp.services.ejb.sessionmanager.SessionManagerHome
 
  I have my application wrapped in an EAR file.  And thus, all my
  EJBs are in that EAR file... and thus my SessionManager bean is and
  does NOT need to be my classpath.
 
  At first, I figured the problem was that I needed to modify the web.xml
  so that the ejb-ref-name points to my sessionmanager... and likewise
  also create weblogic.xml that tied the web.xml's ejb-ref-name to
  the actual JNDI name.  I thought that would do it... but no such luck.
 
  Am I missing something.  Is there some other trick in telling an
  outside web app like Apache SOAP where my EAR is... or how to obtain
  an EJB in my EAR?
 
  Thanks
 
  -
  Michael J. Hudson
  Software/Framework Engineer
  [EMAIL PROTECTED]
 
  cell-phone: 703.362.8039
  voice-mail: 703.827.0638 ext. 4786
  fax: 703.734.0987
 
  Blueprint Technologies
  Great software starts with great architecture
  http://www.blueprinttech.com



RE: Exception Handling/Error Reporting

2002-01-11 Thread George Voronoff

I did some googling and I found an email that was send by Michael J. Hudson that says
that the Call objects getFullTargetObjectURI() gets wiped out when there is a Soap 
Fault.
His workaround solution is to save the full target object uri before the call and reset
it after in the case where there is a fault.

Here is the email in full  
http://marc.theaimsgroup.com/?l=soap-userm=99748693307691w=2

In his email, Michael asks when this bug is going to be fixed.  Obviously, it has not 
been
fixed ;)  Does anyone know if this is indeed a bug or desired behavior?


 -Original Message-
 From: George Voronoff 
 Sent: Friday, January 11, 2002 4:11 PM
 To: [EMAIL PROTECTED]
 Subject: Exception Handling/Error Reporting
 
 
 I'm a soap Newbie and I have some questions about soap and 
 error reporting.
 
 lets say I have a server side method:
 
 public Address getAddressFromName(String name) throws 
 IllegalArgumentException
   {
 if (name == null)
 {
   throw new IllegalArgumentException(The name argument 
 must not be  + null.);
 }
 
 return (Address)name2AddressTable.get(name);
   }
 
 This method was copied directly from the address book example. 
 If name is null the server throws an IllegalArgumenException, 
 and and the response Fault looks like:
 
 Generated fault:
   Fault Code   = SOAP-ENV:Server
   Fault String = Exception from service object: The name 
 argument must not be null.
 
 NOW, If I call the invoke() again (on the same Call ojbect) I 
 get a different fault.
 
 Generated fault:
   Fault Code   = SOAP-ENV:Server.BadTargetObjectURI
   Fault String = Unable to determine object id from call: is 
 the method element namespaced?
 
 It seems to me that throwing the first exception from a 
 server side method caused something bad to
 happen to the Call object.  As such, do I need to avoid 
 throwing server side exceptions at all costs if
 I want to reuse the same Call object?
 
 Is it good practice to avoid throwing server side exceptions 
 in the first place?
 
 Finally, can someone point to to any documentation that 
 discusses implementiing reporting of 
 server side errors.
 
  George Voronoff
  Senior Software Engineer (Net Hack)
  Grassroots Enterprise, Inc