You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(8) |
Nov
|
Dec
(21) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(22) |
Feb
(41) |
Mar
(100) |
Apr
(113) |
May
(70) |
Jun
(89) |
Jul
(79) |
Aug
(17) |
Sep
(16) |
Oct
(9) |
Nov
(7) |
Dec
(22) |
| 2004 |
Jan
(42) |
Feb
(2) |
Mar
(20) |
Apr
(35) |
May
(18) |
Jun
(14) |
Jul
(12) |
Aug
(3) |
Sep
(5) |
Oct
(3) |
Nov
|
Dec
(1) |
| 2005 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
(1) |
May
(3) |
Jun
(9) |
Jul
(18) |
Aug
(10) |
Sep
(12) |
Oct
(4) |
Nov
(4) |
Dec
(9) |
| 2006 |
Jan
(10) |
Feb
(2) |
Mar
(3) |
Apr
(3) |
May
(4) |
Jun
(9) |
Jul
(1) |
Aug
(1) |
Sep
(10) |
Oct
(29) |
Nov
(27) |
Dec
(14) |
| 2007 |
Jan
(9) |
Feb
(23) |
Mar
(3) |
Apr
(9) |
May
(21) |
Jun
(24) |
Jul
(21) |
Aug
(22) |
Sep
(11) |
Oct
(5) |
Nov
(3) |
Dec
(4) |
| 2008 |
Jan
(2) |
Feb
(5) |
Mar
(3) |
Apr
(22) |
May
(18) |
Jun
(14) |
Jul
(27) |
Aug
(20) |
Sep
(16) |
Oct
(17) |
Nov
(26) |
Dec
(48) |
| 2009 |
Jan
(37) |
Feb
(14) |
Mar
(39) |
Apr
(66) |
May
(140) |
Jun
(127) |
Jul
(78) |
Aug
(26) |
Sep
(24) |
Oct
(34) |
Nov
(10) |
Dec
(20) |
| 2010 |
Jan
(6) |
Feb
(7) |
Mar
(51) |
Apr
(49) |
May
(71) |
Jun
(57) |
Jul
(42) |
Aug
(53) |
Sep
(21) |
Oct
(4) |
Nov
|
Dec
(1) |
| 2011 |
Jan
|
Feb
(1) |
Mar
(4) |
Apr
(2) |
May
(3) |
Jun
|
Jul
(2) |
Aug
(5) |
Sep
(1) |
Oct
(2) |
Nov
(2) |
Dec
|
| 2012 |
Jan
(2) |
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(1) |
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
|
| 2013 |
Jan
|
Feb
|
Mar
(2) |
Apr
(1) |
May
(3) |
Jun
(1) |
Jul
|
Aug
(2) |
Sep
|
Oct
(2) |
Nov
(1) |
Dec
|
| 2014 |
Jan
(2) |
Feb
(2) |
Mar
|
Apr
|
May
(4) |
Jun
(2) |
Jul
(4) |
Aug
(2) |
Sep
(1) |
Oct
|
Nov
(2) |
Dec
(6) |
| 2015 |
Jan
(1) |
Feb
(4) |
Mar
(11) |
Apr
(15) |
May
(12) |
Jun
(13) |
Jul
(7) |
Aug
(7) |
Sep
(5) |
Oct
(3) |
Nov
(5) |
Dec
(15) |
| 2016 |
Jan
(8) |
Feb
(1) |
Mar
(3) |
Apr
(1) |
May
(4) |
Jun
(2) |
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
(2) |
Nov
|
Dec
|
| 2017 |
Jan
(1) |
Feb
|
Mar
(2) |
Apr
|
May
(1) |
Jun
(6) |
Jul
(15) |
Aug
|
Sep
(1) |
Oct
(3) |
Nov
(3) |
Dec
(7) |
| 2018 |
Jan
(6) |
Feb
(8) |
Mar
(12) |
Apr
(6) |
May
(5) |
Jun
(3) |
Jul
(4) |
Aug
(6) |
Sep
(1) |
Oct
(2) |
Nov
|
Dec
(2) |
| 2019 |
Jan
(5) |
Feb
(5) |
Mar
|
Apr
|
May
(5) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2020 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
(3) |
Dec
|
| 2021 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
|
May
(1) |
Jun
|
Jul
(2) |
Aug
(2) |
Sep
|
Oct
(1) |
Nov
(1) |
Dec
|
| 2022 |
Jan
(1) |
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
(9) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(29) |
Nov
|
Dec
|
| 2024 |
Jan
|
Feb
|
Mar
(4) |
Apr
(2) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Patrick Y. <kc...@ce...> - 2004-04-08 04:24:57
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content=3D"text/html;charset=3Dwindows-1252" http-equiv=3D"Content-Type"> <title></title> </head> <body bgcolor=3D"#ffffff" text=3D"#000000"> Yes, it does make sense. Thanks! Designing a good exception hierarchy is no easy task, let's review that as well when we review our code later.<br> Regards, -Patrick<br> <br> Mayne, Peter wrote:<br> <blockquote cite=3D"mid...@s-...= m.au" type=3D"cite"> <meta http-equiv=3D"Content-Type" content=3D"text/html; "> <meta name=3D"Generator" content=3D"MS Exchange Server version 5.5.2654.45"> <title>Error reporting in Hermes source code</title> <p><font size=3D"2">I'd like to make a comment or two about error catching and reporting. Please read this as constructive criticism aimed at improving Hermes: I'm definitely not trying to be negative.</fon= t></p> <p><font size=3D"2">While tracking down the problems I ran into yesterday, I noticed that the code that catches and reports exceptions leaves something to be desired.</font></p> <p><font size=3D"2">Example 1</font> </p> <p><font size=3D"2">While trying to track down a "Cannot parse SOAP message" error, I eventually got down to EbxmlMessage.getMessageFromDataSource(), and the following code:</font></= p> <p><font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 try {</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 soapMess= age =3D MessageFactory.newInstance().createMessage</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 (headers, new ByteArrayInputStream(soapMessageBytes, 0,</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 lastIndex + 1));</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 } catch (Exception e= ) {</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 throw ne= w SOAPException("Cannot parse SOAP message");</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 }</font> </p> <p><font size=3D"2">The actual exception from the createMessage() call has been discarded, and a new exception created. Unfortunately, any useful information in the original exception, which in this case was the extremely useful "no content-type found" exception, as well as the stack trace, is now lost. I had to insert a fair few debugging lines before I narrowed this down.</font></p> <p><font size=3D"2">This is a prime example of "if I don't know how to handle it, let someone else do it". The solution for cases like this is simple: don't catch exceptions when you don't need to catch them. In this case, since createMessage() throws SOAPException and IOException, and getMessageFromDataSource() already throws SOAPException, I would let getMessageFromDataSource() throw IOException as well, and let the exception be handled higher up.</font></p> <p><font size=3D"2">Example 2</font> </p> <p><font size=3D"2">While trying to track down a NullPointerException, I came across the following pattern, repeated quite a few times in MessageServiceHandler (for instance, but also other places) in various forms:</font></p> <p><font size=3D"2">=A0=A0=A0=A0=A0=A0=A0 try {</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ...</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0 }</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0 catch (Exception e) {</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 String err =3D Error= Messages.getMessage(</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ErrorMessages.ERR_HERMES_UNKNOWN_ERROR, e);</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 logger.error(err);</= font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 throw new MessageServiceHandlerException(err);</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0 }</font> </p> <p><font size=3D"2">Here we have an exception that should be fully reported. However, getMessage builds a String that tells us what the exception is, and what it tells us, but loses the associated stack trace, which is extremely useful for problem tracking. Note also that "logger.error(err)" only logs the text of the exception, not the stack trace.</font></p> <p><font size=3D"2">Again, I had to insert a few debugging lines just to figure out where the exception was being thrown, and what was throwing it, because this pattern creates a completely different stack trace beginning with the "throw new MessageServiceHandlerException()" line, which is pretty much useless. All I had to work with yesterday was the error text "NullPointerException" thrown from a catch clause that covers all of dispatchMessage(), which provides no help at all to track the problem down.</font></p> <p><font size=3D"2">There are one or two things to do here. Firstly and most importantly, use the logger to log more information. In particular, use the "logger.error(Object, Throwable)" form, instead of the "logger.error(Object)" form, so the exception and its stack trace get logged. (Likewise for the other logger methods.)</font></p> <p><font size=3D"2">Secondly (and optionally), I would bite the bullet and use Java1.4 to use the "Exception(String, Throwable)" form, so information about the original exception is maintained. However, given the logged stack trace from logger.error(), and the desire to still support Java1.3, you could probably avoid this one.</font></p> <p><font size=3D"2">This would result in the above pattern becoming:</f= ont> </p> <p><font size=3D"2">=A0=A0=A0=A0=A0=A0=A0 catch(Exception e) {</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 String errMsg =3D Er= rorMessages.getMessage(</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ErrorMessages.ERR_HERMES_UNKNOWN_ERROR);</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 logger.error(errMsg,= e);</font> </p> <p><font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 // either for Jav= a1.4</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 throw new MessageServicehandlerException(errMsg, e);</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 // or Java 1.3</font= > <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 throw new MessageServicehandlerException(errMsg);</font> <br> <font size=3D"2">=A0=A0=A0=A0=A0=A0=A0 }</font> </p> <p><font size=3D"2">These changes would make exceptions much easier to track down. They would also simplify ErrorsMessage.getMessage() a bit, since it would no longer need to know about the exception.</font></p> <p><font size=3D"2">I hope all this makes sense.</font> </p> <p><font size=3D"2">PJDM</font> <br> <font size=3D"2">--</font> <br> <font size=3D"2">Peter Mayne</font> <br> <font size=3D"2">Technology Consultant</font> <br> <font size=3D"2">Spherion Technology Solutions</font> <br> <font size=3D"2">Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602</f= ont> <br> <font size=3D"2">T: 61 2 62689727=A0 F: 61 2 62689777</font> </p> <!--[object_id=3D#ap.spherion.com#]--> <p align=3D"left">=A0</p> <p align=3D"left"><font face=3D"Tahoma" size=3D"2"><font color=3D"#0000= ff"><br> =A0</font></font></p> </blockquote> <br> </body> </html> |
|
From: Patrick Y. <kc...@ce...> - 2004-04-08 03:53:10
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type"> <title></title> </head> <body bgcolor="#ffffff" text="#000000"> <font size="2"><br> Sorry for late response. Thanks. Why don't you check it into CVS directly? <br> Regards, -Patrick<br> <br> </font> <blockquote cite="mid...@s-..." type="cite"> <p><font size="2">After that, I can check the getAnyMessageById() changes into CVS (they're additions that shouldn't affect anything else), or send them separately so they can be inspected.</font></p> <p><font size="2">PJDM</font> <br> <font size="2">--</font> <br> <font size="2">Peter Mayne</font> <br> <font size="2">Technology Consultant</font> <br> <font size="2">Spherion Technology Solutions</font> <br> <font size="2">Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602</font> <br> <font size="2">T: 61 2 62689727 F: 61 2 62689777</font> </p> <!--[object_id=#ap.spherion.com#]--> <p align="left"> </p> <p align="left"><font face="Tahoma" size="2"><font color="#0000ff"><br> </font></font></p> </blockquote> <br> </body> </html> |
|
From: Rao Y. <ra...@ya...> - 2004-04-07 04:35:03
|
Dunia you need to import each of the other certs into keystore as well in addition to cacerts. keytool -import .......... -Venkat --- ebx...@li... wrote: > Send ebxmlms-develop mailing list submissions to > ebx...@li... > > To subscribe or unsubscribe via the World Wide Web, > visit > > https://lists.sourceforge.net/lists/listinfo/ebxmlms-develop > or, via email, send a message with subject or body > 'help' to > ebx...@li... > > You can reach the person managing the list at > ebx...@li... > > When replying, please edit your Subject line so it > is more specific > than "Re: Contents of ebxmlms-develop digest..." > > > Today's Topics: > > 1. Hermes & SSL (Dunia Grandoni) > 2. RE: Hermes & SSL (Mayne, Peter) > > --__--__-- > > Message: 1 > To: ebx...@li... > From: Dunia Grandoni <DGr...@mi...> > Date: Tue, 6 Apr 2004 11:45:01 +0200 > Subject: [ebxmlms-develop] Hermes & SSL > Reply-To: ebx...@li... > > Questo un messaggio multiparte in formato MIME. > --=_alternative 003575EAC1256E6E_= > Content-Type: text/plain; charset="US-ASCII" > > Hi all, > I am new to Hermes MSH, so I apologise in advance > for the questions I'm > posting. > I cannot make my Hermes MSH application work with > https. > I read the previous post 'about Hermes & SSL' and I > tried to make the > changes mentioned > there, but I had no success. > Here's what I have to manage: > There's a Tomcat 4.1.27, SSL enabled, on a Windows > 2000 platform (A); an > application that uses > msh is running on it, it is used to send (and > receive) invoices to a twin > application that is running > on another server (Tomcat 4.1.27, SSL enabled, on a > Linux platform (B)). > What I did is creating (with java keytool) a > certificate for each server > and then I imported in <JRE>/lib/security/cacerts > of A the certificate of B and viceversa. > When trying to send an invoice from A to B I get an > exception: > hk.hku.cecid.phoenix.message.handler.RequestException: > > sun.security.validator.ValidatorException: No > trusted certificate found > and no message is sent. > Could someone help me configuring msh right? > Thank you so much > Dunia > > > --=_alternative 003575EAC1256E6E_= > Content-Type: text/html; charset="US-ASCII" > > > <br><font size=2 face="sans-serif">Hi all,</font> > <br><font size=2 face="sans-serif">I am new to > Hermes MSH, so I apologise > in advance for the questions I'm posting.</font> > <br><font size=2 face="sans-serif">I cannot make my > Hermes MSH application > work with https.</font> > <br><font size=2 face="sans-serif">I read the > previous post 'about Hermes > & SSL' and I tried to make the changes mentioned > </font> > <br><font size=2 face="sans-serif">there, but I had > no success.</font> > <br><font size=2 face="sans-serif">Here's what I > have to manage:</font> > <br><font size=2 face="sans-serif">There's a Tomcat > 4.1.27, SSL enabled, > on a Windows 2000 platform (A); an application that > uses</font> > <br><font size=2 face="sans-serif">msh is running on > it, it is used to > send (and receive) invoices to a twin application > that is running</font> > <br><font size=2 face="sans-serif">on another server > (Tomcat 4.1.27, SSL > enabled, on a Linux platform (B)).</font> > <br><font size=2 face="sans-serif">What I did is > creating (with java keytool) > a certificate for each server and then I imported in > <JRE>/lib/security/cacerts</font> > <br><font size=2 face="sans-serif">of A the > certificate of B and viceversa. > </font> > <br><font size=2 face="sans-serif">When trying to > send an invoice from > A to B I get an exception: > hk.hku.cecid.phoenix.message.handler.RequestException: > sun.security.validator.ValidatorException: No > trusted certificate found</font> > <br><font size=2 face="sans-serif">and no message is > sent.</font> > <br><font size=2 face="sans-serif">Could someone > help me configuring msh > right?</font> > <br><font size=2 face="sans-serif">Thank you so > much</font> > <br><font size=2 face="sans-serif">Dunia</font> > <br><font size=2 face="sans-serif"><br> > </font> > --=_alternative 003575EAC1256E6E_=-- > > > --__--__-- > > Message: 2 > From: "Mayne, Peter" <Pet...@ap...> > To: <ebx...@li...> > Subject: RE: [ebxmlms-develop] Hermes & SSL > Date: Wed, 7 Apr 2004 10:00:32 +1000 > Reply-To: ebx...@li... > > This is a multi-part message in MIME format. > > ------=_NextPart_000_159B1_01C41C87.4ED12AB0 > Content-Type: multipart/alternative; > boundary="----_=_NextPart_001_01C41C33.58A58990" > > > ------_=_NextPart_001_01C41C33.58A58990 > Content-Transfer-Encoding: quoted-printable > Content-Type: text/plain; > charset="iso-8859-1" > > (Disclaimer: I don't actually do this, because for > one reason or = > another, I > comment out most of the Http class used in Hermes, > including the = > keystore > stuff.) > =20 > I believe Hermes uses its own trust store. Look in > msh.properties.xml at > //Property/MSH/SSL and use your own keystore, rather > than modifying the = > one > in JAVA_HOME/lib/security. > =20 > PJDM > -- > Peter Mayne > Technology Consultant > Spherion Technology Solutions > Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602 > T: 61 2 62689727 F: 61 2 62689777=20 > > -----Original Message----- > From: Dunia Grandoni > [mailto:DGr...@mi...]=20 > Sent: Tuesday, 6 April 2004 7:45 PM > To: ebx...@li... > Subject: [ebxmlms-develop] Hermes & SSL > > > > Hi all,=20 > I am new to Hermes MSH, so I apologise in advance > for the questions I'm > posting.=20 > I cannot make my Hermes MSH application work with > https.=20 > I read the previous post 'about Hermes & SSL' and I > tried to make the > changes mentioned=20 > there, but I had no success.=20 > Here's what I have to manage:=20 > There's a Tomcat 4.1.27, SSL enabled, on a Windows > 2000 platform (A); an > application that uses=20 > msh is running on it, it is used to send (and > receive) invoices to a = > twin > application that is running=20 > on another server (Tomcat 4.1.27, SSL enabled, on a > Linux platform (B)). = > > What I did is creating (with java keytool) a > certificate for each server = > and > then I imported in <JRE>/lib/security/cacerts=20 > of A the certificate of B and viceversa.=20 > When trying to send an invoice from A to B I get an > exception: > hk.hku.cecid.phoenix.message.handler.RequestException: > sun.security.validator.ValidatorException: No > trusted certificate found=20 > and no message is sent.=20 > Could someone help me configuring msh right?=20 > Thank you so much=20 > Dunia=20 > > > > > > The information contained in this email and any > attachments to it: > > (a) may be confidential and if you are not the > intended recipient, any = > interference with,=20 > use, disclosure or copying of this material is > unauthorised and = > prohibited; and > > (b) may contain personal information of the > recipient and/or the sender = > as defined=20 > under the Privacy Act 1988 (Cth). Consent is hereby > given by the = > recipient(s) to=20 > collect, hold and use such information and any > personal information = > contained in a=20 > response to this email, for any reasonable purpose > in the ordinary = > course of=20 > Spherion's=20 > business, including forwarding this email internally > or disclosing it to = > a third party. All=20 > personal information collected by Spherion will be > handled in accordance = > with=20 > Spherion's Privacy Policy. If you have received this > email in error, = > please notify the=20 > sender and delete it. > > (c) you agree not to employ or arrange employment > for any candidate(s) = > supplied in=20 > this email and any attachments without first > entering into a contractual = > agreement with=20 > Spherion. You further agree not to divulge any > information contained in = > this document=20 > to any person(s) or entities without the express > permission of Spherion. > > > > ------_=_NextPart_001_01C41C33.58A58990 > Content-Transfer-Encoding: quoted-printable > Content-Type: text/html; > charset="iso-8859-1" > > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 > Transitional//EN"> > <HTML><HEAD> > <META HTTP-EQUIV=3D"Content-Type" > CONTENT=3D"text/html; = > charset=3DUS-ASCII"> > <TITLE>Message</TITLE> > > <META content=3D"MSHTML 6.00.2800.1264" > name=3DGENERATOR></HEAD> > <BODY> > <DIV><SPAN class=3D448475623-06042004><FONT > face=3DArial = > size=3D2>(Disclaimer: I don't=20 > actually do this, because for one reason or another, > I comment out most = > of the=20 > Http class used in Hermes, including the keystore = > stuff.)</FONT></SPAN></DIV> > <DIV><SPAN class=3D448475623-06042004><FONT > face=3DArial=20 > size=3D2></FONT></SPAN> </DIV> > <DIV><SPAN class=3D448475623-06042004><FONT > face=3DArial size=3D2>I = > believe Hermes=20 > uses its own trust store. Look in msh.properties.xml > at = > //Property/MSH/SSL and=20 > use your own keystore, rather than modifying the one > in=20 > JAVA_HOME/lib/security.</FONT></SPAN></DIV> > <DIV><FONT face=3DArial size=3D2></FONT> </DIV> > <DIV><SPAN class=3D448475623-06042004><FONT > face=3DArial=20 > size=3D2>PJDM<BR></FONT></SPAN><FONT > size=3D2>--<BR>Peter = > Mayne<BR>Technology=20 > Consultant<BR>Spherion Technology Solutions<BR>Level > 1, 243 Northbourne = > Avenue,=20 > Lyneham, ACT, 2602<BR>T: 61 2 62689727 F: 61 2 > 62689777</FONT> = > </DIV> > <BLOCKQUOTE=20 > style=3D"PADDING-LEFT: 5px; MARGIN-LEFT: 5px; > BORDER-LEFT: #000000 2px = > solid; MARGIN-RIGHT: 0px"> > <DIV></DIV> > <DIV class=3DOutlookMessageHeader lang=3Den-us > dir=3Dltr = > align=3Dleft><FONT=20 > face=3DTahoma size=3D2>-----Original > Message-----<BR><B>From:</B> = > Dunia Grandoni=20 > [mailto:DGr...@mi...] <BR><B>Sent:</B> > Tuesday, 6 April 2004 = > 7:45=20 > PM<BR><B>To:</B> = > ebx...@li...<BR><B>Subject:</B>=20 > [ebxmlms-develop] Hermes & > SSL<BR><BR></FONT></DIV><BR><FONT=20 > face=3Dsans-serif size=3D2>Hi all,</FONT> > <BR><FONT face=3Dsans-serif = > size=3D2>I am=20 > new to Hermes MSH, so I apologise in advance for > the questions I'm=20 > posting.</FONT> <BR><FONT face=3Dsans-serif > size=3D2>I cannot make my = > Hermes MSH=20 > application work with https.</FONT> <BR><FONT > face=3Dsans-serif = > size=3D2>I read=20 > the previous post 'about Hermes & SSL' and I > tried to make the = > changes=20 > mentioned </FONT><BR><FONT face=3Dsans-serif > size=3D2>there, but I had = > no=20 > success.</FONT> <BR><FONT face=3Dsans-serif > size=3D2>Here's what I = > have to=20 > manage:</FONT> <BR><FONT face=3Dsans-serif > size=3D2>There's a Tomcat = > 4.1.27, SSL=20 > enabled, on a Windows 2000 platform (A); an > application that = > uses</FONT>=20 > <BR><FONT face=3Dsans-serif size=3D2>msh is > running on it, it is used = > to send (and=20 > receive) invoices to a twin application that is > running</FONT> = > <BR><FONT=20 > face=3Dsans-serif size=3D2>on another server > (Tomcat 4.1.27, SSL = > enabled, on a=20 > Linux platform (B)).</FONT> <BR><FONT > face=3Dsans-serif size=3D2>What = > I did is=20 > creating (with java keytool) a certificate for > each server and then I = > imported=20 > in <JRE>/lib/security/cacerts</FONT> > <BR><FONT face=3Dsans-serif = > size=3D2>of=20 > A the certificate of B and viceversa. > </FONT><BR><FONT = > face=3Dsans-serif=20 > size=3D2>When trying to send an invoice from A to > B I get an = > exception:=20 > > hk.hku.cecid.phoenix.message.handler.RequestException:=20 > sun.security.validator.ValidatorException: No > trusted certificate = > found</FONT>=20 > <BR><FONT face=3Dsans-serif size=3D2>and no > message is sent.</FONT> = > <BR><FONT=20 > face=3Dsans-serif size=3D2>Could someone help me > configuring msh = > right?</FONT>=20 > <BR><FONT face=3Dsans-serif size=3D2>Thank you so > much</FONT> = > <BR><FONT=20 > face=3Dsans-serif size=3D2>Dunia</FONT> <BR><FONT > face=3Dsans-serif=20 > size=3D2><BR></BLOCKQUOTE></FONT></BODY><!--[object_id=3D#ap.spherion.com= > #]--><P align=3Dleft><FONT face=3DTahoma > size=3D2></FONT> <FONT = > size=3D1>The information contained in this email and > any attachments to = > it:</FONT></P> > <P align=3Dleft><FONT size=3D1>(a) may be > confidential and if you are = > not the intended recipient, any interference with, > <BR>use, disclosure = > or copying of this material is unauthorised and > prohibited; = > and</FONT></P> > <P align=3Dleft><FONT size=3D1>(b) may contain > personal information of = > the recipient and/or the sender as defined <BR>under > the Privacy Act = > 1988 (Cth). Consent is hereby given by the > recipient(s) to <BR>collect, = > hold and use such information and any personal > information contained in = > a <BR>response to this email, for any reasonable > purpose in the ordinary = > course of <BR>Spherion's <BR>business, including > forwarding this email = > internally or disclosing it to a third party. All > <BR>personal = > information collected by Spherion will be handled in > accordance with = > <BR>Spherion's Privacy Policy. If you have received > this email in error, = > please notify the <BR>sender and delete > it.</FONT></P> > <P align=3Dleft><FONT size=3D1>(c) you agree not to > employ or arrange = > employment for any candidate(s) supplied in <BR>this > email and any = > attachments without first entering into a > contractual agreement with = > <BR>Spherion. You further agree not to divulge any > information contained = > in this document <BR>to any person(s) or entities > without the express = > permission of Spherion.<BR></FONT></P> > <P align=3Dleft><FONT face=3DTahoma size=3D2><FONT = > color=3D#0000ff><BR> </P></FONT></FONT></HTML> > > ------_=_NextPart_001_01C41C33.58A58990-- > > ------=_NextPart_000_159B1_01C41C87.4ED12AB0-- > > > > --__--__-- > > _______________________________________________ > ebxmlms-develop mailing list > ebx...@li... > https://lists.sourceforge.net/lists/listinfo/ebxmlms-develop > > > End of ebxmlms-develop Digest __________________________________ Do you Yahoo!? Yahoo! Small Business $15K Web Design Giveaway http://promotions.yahoo.com/design_giveaway/ |
|
From: Dunia G. <DGr...@mi...> - 2004-04-06 09:40:23
|
Hi all, I am new to Hermes MSH, so I apologise in advance for the questions I'm posting. I cannot make my Hermes MSH application work with https. I read the previous post 'about Hermes & SSL' and I tried to make the changes mentioned there, but I had no success. Here's what I have to manage: There's a Tomcat 4.1.27, SSL enabled, on a Windows 2000 platform (A); an application that uses msh is running on it, it is used to send (and receive) invoices to a twin application that is running on another server (Tomcat 4.1.27, SSL enabled, on a Linux platform (B)). What I did is creating (with java keytool) a certificate for each server and then I imported in <JRE>/lib/security/cacerts of A the certificate of B and viceversa. When trying to send an invoice from A to B I get an exception: hk.hku.cecid.phoenix.message.handler.RequestException: sun.security.validator.ValidatorException: No trusted certificate found and no message is sent. Could someone help me configuring msh right? Thank you so much Dunia |
|
From: Rao Y. <ra...@ya...> - 2004-04-02 16:35:10
|
Bob you are correct . all the while i was thinking there were duplicate declarations of status cpaId, service et. al. that was the reason i suggested for a return inside. but just went thru the code and found that they are declared right at the start of the method. -Venkat ebx...@li... wrote: Send ebxmlms-develop mailing list submissions to ebx...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/ebxmlms-develop or, via email, send a message with subject or body 'help' to ebx...@li... You can reach the person managing the list at ebx...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of ebxmlms-develop digest..." Today's Topics: 1. Re: StatusRequest not working as intended (Bob Koon) 2. Re: Error from build of latest source code , HTTP response code = 409 (Bob Koon) 3. Re: Problems with MIME headers on error messages (Bob Koon) 4. Re: Problems with MIME headers on error messages (Bob Koon) 5. Re: Problems receiving error messages (Bob Koon) --__--__-- Message: 1 Date: Thu, 01 Apr 2004 15:41:08 +0800 From: Bob Koon To: ebx...@li... Subject: Re: [ebxmlms-develop] StatusRequest not working as intended Reply-To: ebx...@li... Thanks for your suggestion. However I cannot get out the different on adding the return statement. The rough logic flow of MessageServer.getMessageStatus() is as following String[] getMessageStatus() { // ... set all things null try { // do some query. if (!resultSet.next()) { //return error status. } else { //set those response... // <- where you suggest on adding the return statement. } } catch (MessageServerException e) { //mark down exception } catch (Exception e) { //mark down exception } finally { //throw exception } return new String[] {status, timestamp, cpaid, conversationId, service, action}; } I cannot figure out the different if there exist/doesn't exist the return statement, since if it flows to the else part, it will finally flow to the last return statement. Regards, Bob Koon Yerubandi Rao wrote: >All, >with the build from the latest cvs source code , i found out that StatusRequest is not working as intended. i think i have figured out the problem . >i am including a patch for the fix . > > >Index: MessageServer.java >=================================================================== >retrieving revision 1.149 >diff -u -r1.149 MessageServer.java >--- MessageServer.java 10 Feb 2004 03:12:52 -0000 1.149 >+++ MessageServer.java 1 Apr 2004 01:19:18 -0000 >@@ -1969,7 +1969,13 @@ > status = Constants.STATUS_PROCESSED; > } else { > status = Constants.STATUS_UN_AUTHORIZED; >- } >+ } >+ // local variables ( status, timestamp, cpaId, conversationId, service, action) >+ // are initialized in this block and a return is being made outside the block, >+ // .. so if the below return statement is not present , always String[] of nulls will be >+ // returned and the correct StatusResponse will not be generated >+ return new String[]{status, timestamp, cpaId, conversationId, >+ service, action}; > } > } catch (MessageServerException e) { > exception = e; >@@ -1993,8 +1999,8 @@ > if (exception != null) { > throw new MessageServerException(exception.getMessage()); > } >- >- logger.debug("<= MessageServer.getMessageStatus"); >+ >+ logger.debug("<= MessageServer.getMessageStatus"); > } > return new String[]{status, timestamp, cpaId, conversationId, > service, action}; > <> > >-Venkat > > --__--__-- Message: 2 Date: Thu, 01 Apr 2004 15:42:45 +0800 From: Bob Koon To: ebx...@li... Subject: Re: [ebxmlms-develop] Error from build of latest source code , HTTP response code = 409 Reply-To: ebx...@li... Thanks for your reporting. I need some time to fix it, so I will reply=20 when I fixed it up. Regards, Bob Koon Yerubandi Rao wrote: >All, >i got the latest hermes code from CVS and deployed it on JBoss. when i t= ry to send a simple request i get the following error=20 > > >Message: Cannot parse SOAP message >10:55:21,810 ERROR [STDERR] hk.hku.cecid.phoenix.message.handler.Request= Exceptio >n: >Fail to send EbxmlMessage to MessageServiceHandler: > HTTP response code =3D 409 > HTTP response message =3D [10008] HTTP POST request failed - [10002] U= nknown err >or Exception: java.io.IOException Message: [10002] Unknown error Excepti= on: java >x.xml.soap.SOAPException Message: Cannot parse SOAP message >10:55:21,870 ERROR [STDERR] at hk.hku.cecid.phoenix.message.handler.= Request. >sendMessage(Request.java:1712) >10:55:21,880 ERROR [STDERR] at hk.hku.cecid.phoenix.message.handler.= Request. >send(Request.java:1173) >10:55:21,900 ERROR [STDERR] at Ping.runPing(Ping.java:554) >10:55:21,910 ERROR [STDERR] at Ping.doPost(Ping.java:45) >10:55:21,920 ERROR [STDERR] at Ping.doGet(Ping.java:31) >10:55:21,930 ERROR [STDERR] at javax.servlet.http.HttpServlet.servic= e(HttpSe >rvlet.java:740) >10:55:21,930 ERROR [STDERR] at javax.servlet.http.HttpServlet.servic= e(HttpSe >rvlet.java:853) >10:55:21,930 ERROR [STDERR] at org.apache.catalina.core.ApplicationF= ilterCha >in.internalDoFilter(ApplicationFilterChain.java:247) >10:55:21,930 ERROR [STDERR] at org.apache.catalina.core.ApplicationF= ilterCha >in.doFilter(ApplicationFilterChain.java:193) >10:55:21,930 ERROR [STDERR] at org.apache.catalina.core.StandardWrap= perValve >.invoke(StandardWrapperValve.java:256) >10:55:21,930 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) >10:55:22,020 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line.inv >oke(StandardPipeline.java:480) >10:55:22,020 ERROR [STDERR] at org.apache.catalina.core.ContainerBas= e.invoke >(ContainerBase.java:995) >10:55:22,020 ERROR [STDERR] at org.apache.catalina.core.StandardCont= extValve >.invoke(StandardContextValve.java:191) >10:55:22,080 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) >10:55:22,080 ERROR [STDERR] at org.jboss.web.tomcat.security.JBossSe= curityMg >rRealm.invoke(JBossSecurityMgrRealm.java:220) >10:55:22,080 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,080 ERROR [STDERR] at org.apache.catalina.valves.Certificat= esValve. >invoke(CertificatesValve.java:246) >10:55:22,080 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,080 ERROR [STDERR] at org.jboss.web.tomcat.tc4.statistics.C= ontainer >StatsValve.invoke(ContainerStatsValve.java:76) >10:55:22,171 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,171 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line.inv >oke(StandardPipeline.java:480) >10:55:22,181 ERROR [STDERR] at org.apache.catalina.core.ContainerBas= e.invoke >(ContainerBase.java:995) >10:55:22,221 ERROR [STDERR] at org.apache.catalina.core.StandardCont= ext.invo >ke(StandardContext.java:2417) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.core.StandardHost= Valve.in >voke(StandardHostValve.java:180) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.valves.ErrorDispa= tcherVal >ve.invoke(ErrorDispatcherValve.java:171) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.valves.ErrorRepor= tValve.i >nvoke(ErrorReportValve.java:172) >10:55:22,321 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,321 ERROR [STDERR] at org.jboss.web.tomcat.security.Securit= yAssocia >tionValve.invoke(SecurityAssociationValve.java:65) >10:55:22,321 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,321 ERROR [STDERR] at org.apache.catalina.valves.AccessLogV= alve.inv >oke(AccessLogValve.java:577) >10:55:22,391 INFO [MessageServiceHandler] Process command: Get message = (32) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line.inv >oke(StandardPipeline.java:480) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.ContainerBas= e.invoke >(ContainerBase.java:995) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardEngi= neValve. >invoke(StandardEngineValve.java:174) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line.inv >oke(StandardPipeline.java:480) >10:55:22,501 ERROR [STDERR] at org.apache.catalina.core.ContainerBas= e.invoke >(ContainerBase.java:995) >10:55:22,501 ERROR [STDERR] at org.apache.coyote.tomcat4.CoyoteAdapt= er.servi >ce(CoyoteAdapter.java:197) >10:55:22,501 ERROR [STDERR] at org.apache.coyote.http11.Http11Proces= sor.proc >ess(Http11Processor.java:781) >10:55:22,501 ERROR [STDERR] at org.apache.coyote.http11.Http11Protoc= ol$Http1 >1ConnectionHandler.processConnection(Http11Protocol.java:549) >10:55:22,501 ERROR [STDERR] at org.apache.tomcat.util.net.TcpWorkerT= hread.ru >nIt(PoolTcpEndpoint.java:605) >10:55:22,501 ERROR [STDERR] at org.apache.tomcat.util.threads.Thread= Pool$Con >trolRunnable.run(ThreadPool.java:677) > >After digging thru the code i found that the headers passed to >MessageFactory.newInstance().createMessage() have no=20 >Content-Type set. Hence an exception ( Absent Content-type ) is being t= hrown and it is being re-thrown as an >SOAPException ( " Cannot parse SOAP message") >Line 1677 : EbxmlMessage.java=20 >-Venkat > > >------------------------------------------------------- >This SF.Net email is sponsored by: IBM Linux Tutorials >Free Linux tutorial presented by Daniel Robbins, President and CEO of >GenToo technologies. Learn everything from fundamentals to system >administration.http://ads.osdn.com/?ad_id=1470&alloc_id638&op=CCk >_______________________________________________ >ebxmlms-develop mailing list >ebx...@li... >https://lists.sourceforge.net/lists/listinfo/ebxmlms-develop > > > =20 > --__--__-- Message: 3 Date: Thu, 01 Apr 2004 15:45:12 +0800 From: Bob Koon To: ebx...@li... Subject: Re: [ebxmlms-develop] Problems with MIME headers on error messages Reply-To: ebx...@li... This is a multi-part message in MIME format. --------------010409050709090407040600 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Thanks for your reporting. I need some time have a good trace on the why the mime header from the parseOutput won't works, and will reply you all if I fixed it up. Regards, Bob Koon Mayne, Peter wrote: > I'm using Hermes pulled from CVS this morning. > > When I receive an error message, Hermes couldn't build the bytes into > a SOAP message. I tracked this down to > EbxmlMessage.getMessageFromDataSource(), which contains: > > /* > final MimeHeaders headers = new MimeHeaders(); > headers.addHeader(Constants.CONTENT_TYPE, > Constants.TEXT_XML_TYPE); > */ > final MimeHeaders headers = parsedOutput.getMimeHeaders(); > > It seems that parsedOutput.getMimeHeaders() doesn't work properly: it > wasn't producing any headers, so building the SOAP message was failing > with a "no content-type" exception. > > Going back to the predefined header by switching the comments around: > > final MimeHeaders headers = new MimeHeaders(); > headers.addHeader(Constants.CONTENT_TYPE, > Constants.TEXT_XML_TYPE); > /* > final MimeHeaders headers = parsedOutput.getMimeHeaders(); > */ > > now the message builds properly. > > PJDM > -- > Peter Mayne > Technology Consultant > Spherion Technology Solutions > Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602 > T: 61 2 62689727 F: 61 2 62689777 > > > > > > --------------010409050709090407040600 Content-Type: text/html; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by ns.csis.hku.hk id i317f4N7007569 content=3D"text/html;charset=3Dwindows-1252"> Thanks for your reporting. I need some time have a good trace on the why the mime header from the parseOutput won't works, and will reply you all if I fixed it up. Regards, Bob Koon Mayne, Peter wrote: cite=3D"mid...@s-...= m.au"> content=3D"MS Exchange Server version 5.5.2654.45"> I'm using Hermes pulled from CVS this morning.t> When I receive an error message, Hermes couldn't build the bytes into a SOAP message. I tracked this down to EbxmlMessage.getMessageFromDataSource(), which contains: =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 final MimeHeaders he= aders =3D new MimeHeaders(); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 headers.addHeader(Co= nstants.CONTENT_TYPE, Constants.TEXT_XML_TYPE); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 */ =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 final MimeHeaders he= aders =3D parsedOutput.getMimeHeaders(); It seems that parsedOutput.getMimeHeaders() doesn't work properly: it wasn't producing any headers, so building the SOAP message was failing with a "no content-type" exception. Going back to the predefined header by switching the comments around: =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 final MimeHeaders= headers =3D new MimeHeaders(); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 headers.addHeader(Co= nstants.CONTENT_TYPE, Constants.TEXT_XML_TYPE); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 final MimeHeaders he= aders =3D parsedOutput.getMimeHeaders(); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 */ now the message builds properly. PJDM -- Peter Mayne Technology Consultant Spherion Technology Solutions Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602ont> T: 61 2 62689727=A0 F: 61 2 62689777 =A0 ff"> =A0 --------------010409050709090407040600-- --__--__-- Message: 4 Date: Thu, 01 Apr 2004 16:45:40 +0800 From: Bob Koon To: ebx...@li... CC: Yer...@su... Subject: Re: [ebxmlms-develop] Problems with MIME headers on error messages Reply-To: ebx...@li... This is a multi-part message in MIME format. --------------090905060800070208050808 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit I have just fixed the bug and committed it to CVS. (Include adding unit test case) However, since the sourceforge's CVS doesn't work quite stable (when I commit, I see that it cannot generate acknowledgment to the mailing list... and from previous experience, the user may not checkout the latest version just after I committed), therefore you may not able check it out from CVS. Thanks for reporting those bugs. Regards, Bob Koon Mayne, Peter wrote: > I'm using Hermes pulled from CVS this morning. > > When I receive an error message, Hermes couldn't build the bytes into > a SOAP message. I tracked this down to > EbxmlMessage.getMessageFromDataSource(), which contains: > > /* > final MimeHeaders headers = new MimeHeaders(); > headers.addHeader(Constants.CONTENT_TYPE, > Constants.TEXT_XML_TYPE); > */ > final MimeHeaders headers = parsedOutput.getMimeHeaders(); > > It seems that parsedOutput.getMimeHeaders() doesn't work properly: it > wasn't producing any headers, so building the SOAP message was failing > with a "no content-type" exception. > > Going back to the predefined header by switching the comments around: > > final MimeHeaders headers = new MimeHeaders(); > headers.addHeader(Constants.CONTENT_TYPE, > Constants.TEXT_XML_TYPE); > /* > final MimeHeaders headers = parsedOutput.getMimeHeaders(); > */ > > now the message builds properly. > > PJDM > -- > Peter Mayne > Technology Consultant > Spherion Technology Solutions > Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602 > T: 61 2 62689727 F: 61 2 62689777 > > > > > > --------------090905060800070208050808 Content-Type: text/html; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by ns.csis.hku.hk id i318fWN7010570 content=3D"text/html;charset=3Dwindows-1252"> I have just fixed the bug and committed it to CVS. (Include adding unit test case) However, since the sourceforge's CVS doesn't work quite stable (when I commit, I see that it cannot generate acknowledgment to the mailing list... and from previous experience, the user may not checkout the latest version just after I committed), therefore you may not able check it out from CVS. Thanks for reporting those bugs. Regards, Bob Koon Mayne, Peter wrote: cite=3D"mid...@s-...= m.au"> content=3D"MS Exchange Server version 5.5.2654.45"> I'm using Hermes pulled from CVS this morning.t> When I receive an error message, Hermes couldn't build the bytes into a SOAP message. I tracked this down to EbxmlMessage.getMessageFromDataSource(), which contains: =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 final MimeHeaders he= aders =3D new MimeHeaders(); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 headers.addHeader(Co= nstants.CONTENT_TYPE, Constants.TEXT_XML_TYPE); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 */ =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 final MimeHeaders he= aders =3D parsedOutput.getMimeHeaders(); It seems that parsedOutput.getMimeHeaders() doesn't work properly: it wasn't producing any headers, so building the SOAP message was failing with a "no content-type" exception. Going back to the predefined header by switching the comments around: =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 final MimeHeaders= headers =3D new MimeHeaders(); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 headers.addHeader(Co= nstants.CONTENT_TYPE, Constants.TEXT_XML_TYPE); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 final MimeHeaders he= aders =3D parsedOutput.getMimeHeaders(); =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 */ now the message builds properly. PJDM -- Peter Mayne Technology Consultant Spherion Technology Solutions Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602ont> T: 61 2 62689727=A0 F: 61 2 62689777 =A0 ff"> =A0 --------------090905060800070208050808-- --__--__-- Message: 5 Date: Thu, 01 Apr 2004 17:29:44 +0800 From: Bob Koon To: ebx...@li... Subject: Re: [ebxmlms-develop] Problems receiving error messages Reply-To: ebx...@li... This is a multi-part message in MIME format. --------------060900060807080509000409 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit The problem is due to my code fault when I try to make the send with registeration part feature.... will be fixed ASAP. Regards, Bob Koon Mayne, Peter wrote: > I'm using Hermes pulled from CVS this morning. > > When I receive an error message (action "MessageError" with an > in the header), I'm getting null pointer exceptions. > > So far, I've tracked it down to MessageServiceHandler.dispatchMessage(): > > if (isError) { > logger.debug("Error message received"); > final String refToMessageId = > ebxmlMessage.getMessageHeader(). > getRefToMessageId(); > logger.debug("RefToMessageId: " + refToMessageId); > if (refToMessageId != null) { > final ApplicationContext refToAppContext = > > messageServer.getApplicationContext(refToMessageId, tx); > if (refToAppContext != null) { > appContext = refToAppContext; > mshConnection = (appContext == null ? null : > > (MessageServiceHandlerConnection) > > mshConnectionTable.get(appContext)); > > At this point, appContext is "appContext > =cecid:send_generate_cpaid, > =0.7193359494581163, =0.40606018618039663, > =0.01091177446510061", and mshConnection is null. > > Near the end of dispatchMessage(), there is this code: > > Delivery delivery = new Delivery(this, appContext, > mshConnection.getMessageServiceHandlerConfig(). > getMessageListener(), ebxmlMessage); > > Because mshConnection is null, I get a NullPointerException. > > I'm not sure which direction I should go in from here. Any clues? > > Thanks. > > PJDM > -- > Peter Mayne > Technology Consultant > Spherion Technology Solutions > Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602 > T: 61 2 62689727 F: 61 2 62689777 > > > > > > --------------060900060807080509000409 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit The problem is due to my code fault when I try to make the send with registeration part feature.... will be fixed ASAP. Regards, Bob Koon Mayne, Peter wrote: cite="mid...@s-..."> content="MS Exchange Server version 5.5.2654.45"> I'm using Hermes pulled from CVS this morning. When I receive an error message (action "MessageError" with an <eb:ErrorList> in the header), I'm getting null pointer exceptions. So far, I've tracked it down to MessageServiceHandler.dispatchMessage(): if (isError) { logger.debug("Error message received"); final String refToMessageId = ebxmlMessage.getMessageHeader(). getRefToMessageId(); logger.debug("RefToMessageId: " + refToMessageId); if (refToMessageId != null) { final ApplicationContext refToAppContext = messageServer.getApplicationContext(refToMessageId, tx); if (refToAppContext != null) { appContext = refToAppContext; mshConnection = (appContext == null ? null : (MessageServiceHandlerConnection) mshConnectionTable.get(appContext)); At this point, appContext is "appContext <CPAId>=cecid:send_generate_cpaid, <ConversationId>=0.7193359494581163, <Service>=0.40606018618039663, <Action>=0.01091177446510061", and mshConnection is null. Near the end of dispatchMessage(), there is this code: Delivery delivery = new Delivery(this, appContext, mshConnection.getMessageServiceHandlerConfig(). getMessageListener(), ebxmlMessage); Because mshConnection is null, I get a NullPointerException. I'm not sure which direction I should go in from here. Any clues? Thanks. PJDM -- Peter Mayne Technology Consultant Spherion Technology Solutions Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602 T: 61 2 62689727 F: 61 2 62689777 --------------060900060807080509000409-- --__--__-- _______________________________________________ ebxmlms-develop mailing list ebx...@li... https://lists.sourceforge.net/lists/listinfo/ebxmlms-develop End of ebxmlms-develop Digest --------------------------------- Do you Yahoo!? Yahoo! Small Business $15K Web Design Giveaway - Enter today |
|
From: Bob K. <py...@ce...> - 2004-04-01 09:25:38
|
The problem is due to my code fault when I try to make the send with
registeration part feature....
will be fixed ASAP.
Regards,
Bob Koon
Mayne, Peter wrote:
> I'm using Hermes pulled from CVS this morning.
>
> When I receive an error message (action "MessageError" with an
> <eb:ErrorList> in the header), I'm getting null pointer exceptions.
>
> So far, I've tracked it down to MessageServiceHandler.dispatchMessage():
>
> if (isError) {
> logger.debug("Error message received");
> final String refToMessageId =
> ebxmlMessage.getMessageHeader().
> getRefToMessageId();
> logger.debug("RefToMessageId: " + refToMessageId);
> if (refToMessageId != null) {
> final ApplicationContext refToAppContext =
>
> messageServer.getApplicationContext(refToMessageId, tx);
> if (refToAppContext != null) {
> appContext = refToAppContext;
> mshConnection = (appContext == null ? null :
>
> (MessageServiceHandlerConnection)
>
> mshConnectionTable.get(appContext));
>
> At this point, appContext is "appContext
> <CPAId>=cecid:send_generate_cpaid,
> <ConversationId>=0.7193359494581163, <Service>=0.40606018618039663,
> <Action>=0.01091177446510061", and mshConnection is null.
>
> Near the end of dispatchMessage(), there is this code:
>
> Delivery delivery = new Delivery(this, appContext,
> mshConnection.getMessageServiceHandlerConfig().
> getMessageListener(), ebxmlMessage);
>
> Because mshConnection is null, I get a NullPointerException.
>
> I'm not sure which direction I should go in from here. Any clues?
>
> Thanks.
>
> PJDM
> --
> Peter Mayne
> Technology Consultant
> Spherion Technology Solutions
> Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602
> T: 61 2 62689727 F: 61 2 62689777
>
>
>
>
>
>
|
|
From: Bob K. <py...@ce...> - 2004-04-01 08:41:34
|
I have just fixed the bug and committed it to CVS. (Include adding unit test case) However, since the sourceforge's CVS doesn't work quite stable (when I commit, I see that it cannot generate acknowledgment to the mailing list... and from previous experience, the user may not checkout the latest version just after I committed), therefore you may not able check it out from CVS. Thanks for reporting those bugs. Regards, Bob Koon Mayne, Peter wrote: > I'm using Hermes pulled from CVS this morning. > > When I receive an error message, Hermes couldn't build the bytes into > a SOAP message. I tracked this down to > EbxmlMessage.getMessageFromDataSource(), which contains: > > /* > final MimeHeaders headers = new MimeHeaders(); > headers.addHeader(Constants.CONTENT_TYPE, > Constants.TEXT_XML_TYPE); > */ > final MimeHeaders headers = parsedOutput.getMimeHeaders(); > > It seems that parsedOutput.getMimeHeaders() doesn't work properly: it > wasn't producing any headers, so building the SOAP message was failing > with a "no content-type" exception. > > Going back to the predefined header by switching the comments around: > > final MimeHeaders headers = new MimeHeaders(); > headers.addHeader(Constants.CONTENT_TYPE, > Constants.TEXT_XML_TYPE); > /* > final MimeHeaders headers = parsedOutput.getMimeHeaders(); > */ > > now the message builds properly. > > PJDM > -- > Peter Mayne > Technology Consultant > Spherion Technology Solutions > Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602 > T: 61 2 62689727 F: 61 2 62689777 > > > > > > |
|
From: Bob K. <py...@ce...> - 2004-04-01 07:41:06
|
Thanks for your reporting. I need some time have a good trace on the why the mime header from the parseOutput won't works, and will reply you all if I fixed it up. Regards, Bob Koon Mayne, Peter wrote: > I'm using Hermes pulled from CVS this morning. > > When I receive an error message, Hermes couldn't build the bytes into > a SOAP message. I tracked this down to > EbxmlMessage.getMessageFromDataSource(), which contains: > > /* > final MimeHeaders headers = new MimeHeaders(); > headers.addHeader(Constants.CONTENT_TYPE, > Constants.TEXT_XML_TYPE); > */ > final MimeHeaders headers = parsedOutput.getMimeHeaders(); > > It seems that parsedOutput.getMimeHeaders() doesn't work properly: it > wasn't producing any headers, so building the SOAP message was failing > with a "no content-type" exception. > > Going back to the predefined header by switching the comments around: > > final MimeHeaders headers = new MimeHeaders(); > headers.addHeader(Constants.CONTENT_TYPE, > Constants.TEXT_XML_TYPE); > /* > final MimeHeaders headers = parsedOutput.getMimeHeaders(); > */ > > now the message builds properly. > > PJDM > -- > Peter Mayne > Technology Consultant > Spherion Technology Solutions > Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602 > T: 61 2 62689727 F: 61 2 62689777 > > > > > > |
|
From: Bob K. <py...@ce...> - 2004-04-01 07:38:46
|
Thanks for your reporting. I need some time to fix it, so I will reply=20 when I fixed it up. Regards, Bob Koon Yerubandi Rao wrote: >All, >i got the latest hermes code from CVS and deployed it on JBoss. when i t= ry to send a simple request i get the following error=20 > > >Message: Cannot parse SOAP message >10:55:21,810 ERROR [STDERR] hk.hku.cecid.phoenix.message.handler.Request= Exceptio >n: >Fail to send EbxmlMessage to MessageServiceHandler: > HTTP response code =3D 409 > HTTP response message =3D [10008] HTTP POST request failed - [10002] U= nknown err >or Exception: java.io.IOException Message: [10002] Unknown error Excepti= on: java >x.xml.soap.SOAPException Message: Cannot parse SOAP message >10:55:21,870 ERROR [STDERR] at hk.hku.cecid.phoenix.message.handler.= Request. >sendMessage(Request.java:1712) >10:55:21,880 ERROR [STDERR] at hk.hku.cecid.phoenix.message.handler.= Request. >send(Request.java:1173) >10:55:21,900 ERROR [STDERR] at Ping.runPing(Ping.java:554) >10:55:21,910 ERROR [STDERR] at Ping.doPost(Ping.java:45) >10:55:21,920 ERROR [STDERR] at Ping.doGet(Ping.java:31) >10:55:21,930 ERROR [STDERR] at javax.servlet.http.HttpServlet.servic= e(HttpSe >rvlet.java:740) >10:55:21,930 ERROR [STDERR] at javax.servlet.http.HttpServlet.servic= e(HttpSe >rvlet.java:853) >10:55:21,930 ERROR [STDERR] at org.apache.catalina.core.ApplicationF= ilterCha >in.internalDoFilter(ApplicationFilterChain.java:247) >10:55:21,930 ERROR [STDERR] at org.apache.catalina.core.ApplicationF= ilterCha >in.doFilter(ApplicationFilterChain.java:193) >10:55:21,930 ERROR [STDERR] at org.apache.catalina.core.StandardWrap= perValve >.invoke(StandardWrapperValve.java:256) >10:55:21,930 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) >10:55:22,020 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line.inv >oke(StandardPipeline.java:480) >10:55:22,020 ERROR [STDERR] at org.apache.catalina.core.ContainerBas= e.invoke >(ContainerBase.java:995) >10:55:22,020 ERROR [STDERR] at org.apache.catalina.core.StandardCont= extValve >.invoke(StandardContextValve.java:191) >10:55:22,080 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) >10:55:22,080 ERROR [STDERR] at org.jboss.web.tomcat.security.JBossSe= curityMg >rRealm.invoke(JBossSecurityMgrRealm.java:220) >10:55:22,080 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,080 ERROR [STDERR] at org.apache.catalina.valves.Certificat= esValve. >invoke(CertificatesValve.java:246) >10:55:22,080 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,080 ERROR [STDERR] at org.jboss.web.tomcat.tc4.statistics.C= ontainer >StatsValve.invoke(ContainerStatsValve.java:76) >10:55:22,171 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,171 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line.inv >oke(StandardPipeline.java:480) >10:55:22,181 ERROR [STDERR] at org.apache.catalina.core.ContainerBas= e.invoke >(ContainerBase.java:995) >10:55:22,221 ERROR [STDERR] at org.apache.catalina.core.StandardCont= ext.invo >ke(StandardContext.java:2417) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.core.StandardHost= Valve.in >voke(StandardHostValve.java:180) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.valves.ErrorDispa= tcherVal >ve.invoke(ErrorDispatcherValve.java:171) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,231 ERROR [STDERR] at org.apache.catalina.valves.ErrorRepor= tValve.i >nvoke(ErrorReportValve.java:172) >10:55:22,321 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,321 ERROR [STDERR] at org.jboss.web.tomcat.security.Securit= yAssocia >tionValve.invoke(SecurityAssociationValve.java:65) >10:55:22,321 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,321 ERROR [STDERR] at org.apache.catalina.valves.AccessLogV= alve.inv >oke(AccessLogValve.java:577) >10:55:22,391 INFO [MessageServiceHandler] Process command: Get message = (32) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line.inv >oke(StandardPipeline.java:480) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.ContainerBas= e.invoke >(ContainerBase.java:995) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardEngi= neValve. >invoke(StandardEngineValve.java:174) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line$Sta >ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) >10:55:22,401 ERROR [STDERR] at org.apache.catalina.core.StandardPipe= line.inv >oke(StandardPipeline.java:480) >10:55:22,501 ERROR [STDERR] at org.apache.catalina.core.ContainerBas= e.invoke >(ContainerBase.java:995) >10:55:22,501 ERROR [STDERR] at org.apache.coyote.tomcat4.CoyoteAdapt= er.servi >ce(CoyoteAdapter.java:197) >10:55:22,501 ERROR [STDERR] at org.apache.coyote.http11.Http11Proces= sor.proc >ess(Http11Processor.java:781) >10:55:22,501 ERROR [STDERR] at org.apache.coyote.http11.Http11Protoc= ol$Http1 >1ConnectionHandler.processConnection(Http11Protocol.java:549) >10:55:22,501 ERROR [STDERR] at org.apache.tomcat.util.net.TcpWorkerT= hread.ru >nIt(PoolTcpEndpoint.java:605) >10:55:22,501 ERROR [STDERR] at org.apache.tomcat.util.threads.Thread= Pool$Con >trolRunnable.run(ThreadPool.java:677) > >After digging thru the code i found that the headers passed to >MessageFactory.newInstance().createMessage() have no=20 >Content-Type set. Hence an exception ( Absent Content-type ) is being t= hrown and it is being re-thrown as an >SOAPException ( " Cannot parse SOAP message") >Line 1677 : EbxmlMessage.java=20 >-Venkat > > >------------------------------------------------------- >This SF.Net email is sponsored by: IBM Linux Tutorials >Free Linux tutorial presented by Daniel Robbins, President and CEO of >GenToo technologies. Learn everything from fundamentals to system >administration.http://ads.osdn.com/?ad_id=1470&alloc_id638&op=CCk >_______________________________________________ >ebxmlms-develop mailing list >ebx...@li... >https://lists.sourceforge.net/lists/listinfo/ebxmlms-develop > > > =20 > |
|
From: Bob K. <py...@ce...> - 2004-04-01 07:37:10
|
Thanks for your suggestion. However I cannot get out the different on
adding the return statement.
The rough logic flow of MessageServer.getMessageStatus() is as following
String[] getMessageStatus() {
// ... set all things null
try {
// do some query.
if (!resultSet.next()) {
//return error status.
} else {
//set those response...
// <- where you suggest on adding the return statement.
}
} catch (MessageServerException e) {
//mark down exception
} catch (Exception e) {
//mark down exception
} finally {
//throw exception
}
return new String[] {status, timestamp, cpaid, conversationId,
service, action};
}
I cannot figure out the different if there exist/doesn't exist the
return statement, since if it flows to the else part, it will finally
flow to the last return statement.
Regards,
Bob Koon
Yerubandi Rao wrote:
>All,
>with the build from the latest cvs source code , i found out that StatusRequest is not working as intended. i think i have figured out the problem .
>i am including a patch for the fix .
>
>
>Index: MessageServer.java
>===================================================================
>retrieving revision 1.149
>diff -u -r1.149 MessageServer.java
>--- MessageServer.java 10 Feb 2004 03:12:52 -0000 1.149
>+++ MessageServer.java 1 Apr 2004 01:19:18 -0000
>@@ -1969,7 +1969,13 @@
> status = Constants.STATUS_PROCESSED;
> } else {
> status = Constants.STATUS_UN_AUTHORIZED;
>- }
>+ }
>+ // local variables ( status, timestamp, cpaId, conversationId, service, action)
>+ // are initialized in this block and a return is being made outside the block,
>+ // .. so if the below return statement is not present , always String[] of nulls will be
>+ // returned and the correct StatusResponse will not be generated
>+ return new String[]{status, timestamp, cpaId, conversationId,
>+ service, action};
> }
> } catch (MessageServerException e) {
> exception = e;
>@@ -1993,8 +1999,8 @@
> if (exception != null) {
> throw new MessageServerException(exception.getMessage());
> }
>-
>- logger.debug("<= MessageServer.getMessageStatus");
>+
>+ logger.debug("<= MessageServer.getMessageStatus");
> }
> return new String[]{status, timestamp, cpaId, conversationId,
> service, action};
> <<MessageServerPatch>>
>
>-Venkat
>
>
|
|
From: <mlr...@cs...> - 2004-04-01 05:58:06
|
hi all, I am not able to configure msh properly. I had download msh from freebxml.org. when i run through http://localhost:port/msh it gives "msh servlet not available" as the error message. Can any one help me in providing a solution for this problem. provide me some easy steps for msh configuration. -- with Regards ______________________________________ M.L.RAJESH Indian Institute of Science. ______________________________________ Ph : 080-3522716 E-mail: mlr...@cs... ml...@in... |
|
From: Yerubandi R. <Yer...@su...> - 2004-04-01 01:53:03
|
All,
with the build from the latest cvs source code , i found out that =
StatusRequest is not working as intended. i think i have figured out the =
problem .=20
i am including a patch for the fix .=20
Index: MessageServer.java
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
retrieving revision 1.149
diff -u -r1.149 MessageServer.java
--- MessageServer.java 10 Feb 2004 03:12:52 -0000 1.149
+++ MessageServer.java 1 Apr 2004 01:19:18 -0000
@@ -1969,7 +1969,13 @@
status =3D Constants.STATUS_PROCESSED;
} else {
status =3D Constants.STATUS_UN_AUTHORIZED;
- }
+ } =20
+ // local variables ( status, timestamp, cpaId, =
conversationId, service, action)=20
+ // are initialized in this block and a return is being =
made outside the block,=20
+ // .. so if the below return statement is not present , =
always String[] of nulls will be=20
+ // returned and the correct StatusResponse will not be =
generated
+ return new String[]{status, timestamp, cpaId, =
conversationId,
+ service, action};
}
} catch (MessageServerException e) {
exception =3D e;
@@ -1993,8 +1999,8 @@
if (exception !=3D null) {
throw new =
MessageServerException(exception.getMessage());
}
-
- logger.debug("<=3D MessageServer.getMessageStatus");
+ =20
+ logger.debug("<=3D MessageServer.getMessageStatus"); =
=20
}
return new String[]{status, timestamp, cpaId, conversationId,
service, action};
<<MessageServerPatch>>=20
-Venkat
|
|
From: Ng C. Y. [Cyng] <cy...@cs...> - 2004-03-31 03:20:40
|
Hello,
> messageId=id and messageState>=STATE_RECEIVED and
> messageState<=STATE_SENT_RECEIVED
> which includes the message states RECEIVED, RECEIVED_ACKNOWLEDGED, and
> SENT_RECEIVED. However, I want to include other message states such as SENT
> and (if we get notification of intermediate send failures in the future)
> SENT_STARTED.
>
> What is the logic behind limiting getMessageById() in this way? Should there
> be another method called getAnyMessageById() (with a corresponding client
> request)?
Here are the design concepts.
Request.getReceivedMessageIds() is to retrieve those *undelivered*
message id's only so that you can call Request.receive(messageId) to
get the undelivered message. (This is what we call on-demand-mode
retrieval as we get undelivered messages on-demand without polling or
using message listener.)
After Request.receive(messageId) is called to get an undelivered
message, that message will be marked "delivered". But you can still
call Request.receive(messageId) to get the same delivered message again
later. This is a requirement that we met before in a pilot project in
which the application suddenly fails when it is receiving an undelivered
message. After this application recovers, it has lost the copy of the
message but just has the message id persisted.
You are right that we may consider to have a getAllMessageIds()
or getSentMessageIds(). (You may even forget what you "spoke" before
and want to get it again? :-) )
Regards,
CY
----------------------------------------------------------------------------
Ng Chi Yuen, CY. cy...@cs... http://www.cecid.hku.hk/
Technology Officer,
Centre for E-Commerce Infrastructure Development,
The University of Hong Kong
----------------------------------------------------------------------------
|
|
From: Patrick Y. <kc...@ce...> - 2004-03-30 04:01:02
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
I agree with your point. I think the service type need not be
configurable as we only have a fixed number of types. It makes sense
for Hermes to "control" (or "hardcode") the service types, the
applications can then receive those error/notification messages using
specific listeners, or using an all-in-one listener, of their own
choices.<br>
<br>
Regards, -Patrick<br>
<br>
<br>
Mayne, Peter wrote:<br>
<blockquote
cite="mid...@s-..."
type="cite">
<meta http-equiv="Content-Type" content="text/html; ">
<title>Message</title>
<meta content="MSHTML 6.00.2800.1264" name="GENERATOR">
<div><span class="196104003-30032004"><font face="Arial" size="2">In
my case (as you probably know :-), I'm happy to have a single listener
for everything, because I want the back end to sort everything out.</font></span></div>
<div><span class="196104003-30032004"></span> </div>
<div><span class="196104003-30032004"><font face="Arial" size="2">Given
that an ApplicationContext (which provides the context for a listener)
already uses "service" as a parameter, it seems to me that you could
already distinguish extra Hermes-only message types for a "special"
listener by inventing a "CECID:Hermes:local-service-type:xyzzy"
service, for instance. (It might be good to make this special service
type customisable in msh.properties.xml, just in case.) There's no hard
programming here (beyond just another listener if required): a back end
that already recognises several service types shouldn't be too hard
pressed to recognise one more.</font></span></div>
<div><span class="196104003-30032004"></span> </div>
<div><span class="196104003-30032004"><font face="Arial" size="2">Any
messages have to be sent to a listener using some kind of message
format, and I don't see any need to invent a new format when
we're already using a perfectly good one. :-)</font></span></div>
<div> </div>
<div><span class="196104003-30032004"><font face="Arial" size="2">PJDM<br>
</font></span><font size="2">--<br>
Peter Mayne<br>
Technology Consultant<br>
Spherion Technology Solutions<br>
Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602<br>
T: 61 2 62689727 F: 61 2 62689777</font> </div>
<blockquote
style="border-left: 2px solid rgb(0, 0, 0); padding-left: 5px; margin-left: 5px; margin-right: 0px;">
<div class="OutlookMessageHeader" lang="en-us" dir="ltr"
align="left"><font face="Tahoma" size="2">-----Original Message-----<br>
<b>From:</b> Patrick Yee [<a class="moz-txt-link-freetext" href="mailto:kc...@ce...">mailto:kc...@ce...</a>] <br>
<b>Sent:</b> Tuesday, 30 March 2004 1:35 PM<br>
<b>To:</b> <a class="moz-txt-link-abbreviated" href="mailto:ebx...@li...">ebx...@li...</a><br>
<b>Subject:</b> Re: [ebxmlms-develop] Non-delivery notification<br>
<br>
</font></div>
Yes, I mean additional listeners to receive such information. Having
more listeners may make programming harder, but clearer.<br>
Regards, -Patrick</blockquote>
</blockquote>
<br>
</body>
</html>
|
|
From: Patrick Y. <kc...@ce...> - 2004-03-30 03:55:52
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type"> <title></title> </head> <body bgcolor="#ffffff" text="#000000"> You can try to call the following method in Request object:<br> EbxmlMessage receive(string messageid);<br> <br> Sorry for our poor documentation. :-)<br> <br> Regards, -Patrick<br> <br> <br> Mayne, Peter wrote:<br> <blockquote cite="mid...@s-..." type="cite"> <meta http-equiv="Content-Type" content="text/html; "> <meta name="Generator" content="MS Exchange Server version 5.5.2654.45"> <title>Message retrieval API</title> <p><font size="2">My MSH back end has a database of destinations for messages. For instance, incoming purchase orders are delivered to A , whereas incoming remittance notices are sent to B.</font></p> <p><font size="2">Now, suppose I send an invoice, but there is an error in delivery because the other end is down. Hermes will do the right thing and send a delivery error message to my back end. However, all I know about the message is that it is an error message, so I don't know whether I should notify A or B. Obviously, I need to keep some state, so I can look at the RefMessageId, figure out what kind of message the error refers to, and send the notification to the right place.</font></p> <p><font size="2">Hermes already keeps the state I need, since it maintains a database of all the messages that have passed through the MSH. Unfortunately, I can't see any way of officially accessing this database.</font></p> <p><font size="2">Unofficially, I could directly query the Hermes database, but a database which is accessible from the MSH server may or may not be accessible from my back end. Certainly, the MSH repository is definitely not accessible from my back end.</font></p> <p><font size="2">In summary, are there plans for an API to query the message database, so I can do things like retrieve a particular message given a messageId?</font></p> <p><font size="2">PJDM</font> <br> <font size="2">-- </font> <br> <font size="2">Peter Mayne</font> <br> <font size="2">Technology Consultant</font> <br> <font size="2">Spherion Technology Solutions</font> <br> <font size="2">Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602</font> <br> <font size="2">T: 61 2 62689727 F: 61 2 62689777</font> </p> <!--[object_id=#ap.spherion.com#]--> <p align="left"> </p> <p align="left"><font face="Tahoma" size="2"><font color="#0000ff">The information contained in this email and any attachments to it:</font></font></p> <p align="left"><font face="Tahoma" size="2"><font color="#0000ff">(a) may be confidential and if you are not the intended recipient, any interference with, <br> use, disclosure or copying of this material is unauthorised and prohibited; and</font></font></p> <p align="left"><font face="Tahoma" size="2"><font color="#0000ff">(b) may contain personal information of the recipient and/or the sender as defined <br> under the Privacy Act 1988 (Cth). Consent is hereby given by the recipient(s) to <br> collect, hold and use such information and any personal information contained in a <br> response to this email, for any reasonable purpose in the ordinary course of <br> Spherion's <br> business, including forwarding this email internally or disclosing it to a third party. All <br> personal information collected by Spherion will be handled in accordance with <br> Spherion's Privacy Policy. If you have received this email in error, please notify the <br> sender and delete it.</font></font></p> <p align="left"><font face="Tahoma" size="2"><font color="#0000ff">(c) you agree not to employ or arrange employment for any candidate(s) supplied in <br> this email and any attachments without first entering into a contractual agreement with <br> Spherion. You further agree not to divulge any information contained in this document <br> to any person(s) or entities without the express permission of Spherion.<br> </font></font></p> </blockquote> <br> </body> </html> |
|
From: Patrick Y. <kc...@ce...> - 2004-03-30 03:34:44
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Yes, I mean additional listeners to receive such information. Having
more listeners may make programming harder, but clearer.<br>
Regards, -Patrick<br>
<br>
<br>
Mayne, Peter wrote:<br>
<blockquote
cite="mid...@s-..."
type="cite">
<meta http-equiv="Content-Type" content="text/html; ">
<title>Message</title>
<meta content="MSHTML 6.00.2800.1264" name="GENERATOR">
<style></style>
<div><font face="Arial" size="2"><span class="914102523-21032004">At
the moment, all communication with clients is done by sending an ebXML
message, whether it is a "real" message, or some kind of
notification/exception generated by the MSH itself. This has the
advantage of consistency, so that there only has to be one kind of
listener.</span></font></div>
<div><font face="Arial" size="2"><span class="914102523-21032004"></span></font> </div>
<div><font face="Arial" size="2"><span class="914102523-21032004">Or
did you mean something else by "channels"?</span></font></div>
<div> </div>
<div><span class="914102523-21032004"><font face="Arial" size="2">PJDM<br>
</font></span><font size="2">--<br>
Peter Mayne<br>
Technology Consultant<br>
Spherion Technology Solutions<br>
Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602<br>
T: 61 2 62689727 F: 61 2 62689777</font> </div>
<blockquote dir="ltr"
style="border-left: 2px solid rgb(0, 0, 0); padding-left: 5px; margin-left: 5px; margin-right: 0px;">
<div class="OutlookMessageHeader" lang="en-us" dir="ltr"
align="left"><font face="Tahoma" size="2">-----Original Message-----<br>
<b>From:</b> Patrick Yee [<a class="moz-txt-link-freetext" href="mailto:kc...@ce...">mailto:kc...@ce...</a>] <br>
<b>Sent:</b> Saturday, 20 March 2004 6:29 PM<br>
<b>To:</b> <a class="moz-txt-link-abbreviated" href="mailto:ebx...@li...">ebx...@li...</a><br>
<b>Subject:</b> Re: [ebxmlms-develop] Non-delivery notification<br>
<br>
</font></div>
<div><font face="Arial" size="2">Agreed. This is a nice feature. I
have marked it down. To generalize the problem, do you think we need to
restructure the channels for the MSH server to report status to MSH
clients (e.g. failure notifications, sending success notifications,
error messages, etc.)? Any ideas?</font></div>
<div> </div>
<div><font face="Arial" size="2">Regards, -Patrick</font></div>
</blockquote>
<!--[object_id=#ap.spherion.com#]-->
<p align="left"> </p>
<p align="left"><font face="Tahoma" size="2"><font color="#0000ff">The
information contained in this email and any attachments to it:</font></font></p>
<p align="left"><font face="Tahoma" size="2"><font color="#0000ff">(a)
may be confidential and if you are not the intended recipient, any
interference with, <br>
use, disclosure or copying of this material is unauthorised and
prohibited; and</font></font></p>
<p align="left"><font face="Tahoma" size="2"><font color="#0000ff">(b)
may contain personal information of the recipient and/or the sender as
defined <br>
under the Privacy Act 1988 (Cth). Consent is hereby given by the
recipient(s) to <br>
collect, hold and use such information and any personal information
contained in a <br>
response to this email, for any reasonable purpose in the ordinary
course of <br>
Spherion's <br>
business, including forwarding this email internally or disclosing it
to a third party. All <br>
personal information collected by Spherion will be handled in
accordance with <br>
Spherion's Privacy Policy. If you have received this email in error,
please notify the <br>
sender and delete it.</font></font></p>
<p align="left"><font face="Tahoma" size="2"><font color="#0000ff">(c)
you agree not to employ or arrange employment for any candidate(s)
supplied in <br>
this email and any attachments without first entering into a
contractual agreement with <br>
Spherion. You further agree not to divulge any information contained in
this document <br>
to any person(s) or entities without the express permission of Spherion.<br>
</font></font></p>
</blockquote>
<br>
</body>
</html>
|
|
From: Yerubandi R. <Yer...@su...> - 2004-03-25 23:00:57
|
All, i got the latest hermes code from CVS and deployed it on JBoss. when i = try to send a simple request i get the following error=20 Message: Cannot parse SOAP message 10:55:21,810 ERROR [STDERR] = hk.hku.cecid.phoenix.message.handler.RequestExceptio n: Fail to send EbxmlMessage to MessageServiceHandler: HTTP response code =3D 409 HTTP response message =3D [10008] HTTP POST request failed - [10002] = Unknown err or Exception: java.io.IOException Message: [10002] Unknown error = Exception: java x.xml.soap.SOAPException Message: Cannot parse SOAP message 10:55:21,870 ERROR [STDERR] at = hk.hku.cecid.phoenix.message.handler.Request. sendMessage(Request.java:1712) 10:55:21,880 ERROR [STDERR] at = hk.hku.cecid.phoenix.message.handler.Request. send(Request.java:1173) 10:55:21,900 ERROR [STDERR] at Ping.runPing(Ping.java:554) 10:55:21,910 ERROR [STDERR] at Ping.doPost(Ping.java:45) 10:55:21,920 ERROR [STDERR] at Ping.doGet(Ping.java:31) 10:55:21,930 ERROR [STDERR] at = javax.servlet.http.HttpServlet.service(HttpSe rvlet.java:740) 10:55:21,930 ERROR [STDERR] at = javax.servlet.http.HttpServlet.service(HttpSe rvlet.java:853) 10:55:21,930 ERROR [STDERR] at = org.apache.catalina.core.ApplicationFilterCha in.internalDoFilter(ApplicationFilterChain.java:247) 10:55:21,930 ERROR [STDERR] at = org.apache.catalina.core.ApplicationFilterCha in.doFilter(ApplicationFilterChain.java:193) 10:55:21,930 ERROR [STDERR] at = org.apache.catalina.core.StandardWrapperValve .invoke(StandardWrapperValve.java:256) 10:55:21,930 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) 10:55:22,020 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline.inv oke(StandardPipeline.java:480) 10:55:22,020 ERROR [STDERR] at = org.apache.catalina.core.ContainerBase.invoke (ContainerBase.java:995) 10:55:22,020 ERROR [STDERR] at = org.apache.catalina.core.StandardContextValve .invoke(StandardContextValve.java:191) 10:55:22,080 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) 10:55:22,080 ERROR [STDERR] at = org.jboss.web.tomcat.security.JBossSecurityMg rRealm.invoke(JBossSecurityMgrRealm.java:220) 10:55:22,080 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) 10:55:22,080 ERROR [STDERR] at = org.apache.catalina.valves.CertificatesValve. invoke(CertificatesValve.java:246) 10:55:22,080 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) 10:55:22,080 ERROR [STDERR] at = org.jboss.web.tomcat.tc4.statistics.Container StatsValve.invoke(ContainerStatsValve.java:76) 10:55:22,171 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) 10:55:22,171 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline.inv oke(StandardPipeline.java:480) 10:55:22,181 ERROR [STDERR] at = org.apache.catalina.core.ContainerBase.invoke (ContainerBase.java:995) 10:55:22,221 ERROR [STDERR] at = org.apache.catalina.core.StandardContext.invo ke(StandardContext.java:2417) 10:55:22,231 ERROR [STDERR] at = org.apache.catalina.core.StandardHostValve.in voke(StandardHostValve.java:180) 10:55:22,231 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) 10:55:22,231 ERROR [STDERR] at = org.apache.catalina.valves.ErrorDispatcherVal ve.invoke(ErrorDispatcherValve.java:171) 10:55:22,231 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) 10:55:22,231 ERROR [STDERR] at = org.apache.catalina.valves.ErrorReportValve.i nvoke(ErrorReportValve.java:172) 10:55:22,321 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) 10:55:22,321 ERROR [STDERR] at = org.jboss.web.tomcat.security.SecurityAssocia tionValve.invoke(SecurityAssociationValve.java:65) 10:55:22,321 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) 10:55:22,321 ERROR [STDERR] at = org.apache.catalina.valves.AccessLogValve.inv oke(AccessLogValve.java:577) 10:55:22,391 INFO [MessageServiceHandler] Process command: Get message = (32) 10:55:22,401 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:641) 10:55:22,401 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline.inv oke(StandardPipeline.java:480) 10:55:22,401 ERROR [STDERR] at = org.apache.catalina.core.ContainerBase.invoke (ContainerBase.java:995) 10:55:22,401 ERROR [STDERR] at = org.apache.catalina.core.StandardEngineValve. invoke(StandardEngineValve.java:174) 10:55:22,401 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline$Sta ndardPipelineValveContext.invokeNext(StandardPipeline.java:643) 10:55:22,401 ERROR [STDERR] at = org.apache.catalina.core.StandardPipeline.inv oke(StandardPipeline.java:480) 10:55:22,501 ERROR [STDERR] at = org.apache.catalina.core.ContainerBase.invoke (ContainerBase.java:995) 10:55:22,501 ERROR [STDERR] at = org.apache.coyote.tomcat4.CoyoteAdapter.servi ce(CoyoteAdapter.java:197) 10:55:22,501 ERROR [STDERR] at = org.apache.coyote.http11.Http11Processor.proc ess(Http11Processor.java:781) 10:55:22,501 ERROR [STDERR] at = org.apache.coyote.http11.Http11Protocol$Http1 1ConnectionHandler.processConnection(Http11Protocol.java:549) 10:55:22,501 ERROR [STDERR] at = org.apache.tomcat.util.net.TcpWorkerThread.ru nIt(PoolTcpEndpoint.java:605) 10:55:22,501 ERROR [STDERR] at = org.apache.tomcat.util.threads.ThreadPool$Con trolRunnable.run(ThreadPool.java:677) After digging thru the code i found that the headers passed to MessageFactory.newInstance().createMessage() have no=20 Content-Type set. Hence an exception ( Absent Content-type ) is being = thrown and it is being re-thrown as an SOAPException ( " Cannot parse SOAP message") Line 1677 : EbxmlMessage.java=20 -Venkat |
|
From: Patrick Y. <kc...@ce...> - 2004-03-24 02:25:39
|
Dear Friends of ebXML, Your interest and support for Hermes (based on OASIS' ebMS v2 standards) and ebMail in the past 18 months have helped them gain acceptance. Hermes has recorded 5400+ downloads from 50+ regions/countries since its debut in http://www.freebxml.org in Sep 2002, while ebMail has 2500 downloads since Jun 2003. We are conducting a structured user satisfaction survey, and hope you could give us your feedback to better serve your needs. Data collected will also be used for reporting to our funding agency of the Hong Kong Government. The questionnaire is accessible in http://www.cecid.hku.hk/questionnaire/. It should take approximately 10 minutes to complete. Your submission of the online questionnaire *before APRIL 16* is highly appreciated. Thank you in advance for your participation. Regards, -Patrick |
|
From: Patrick Y. <kc...@ce...> - 2004-03-20 07:28:56
|
Non-delivery notificationAgreed. This is a nice feature. I have marked = it down. To generalize the problem, do you think we need to restructure = the channels for the MSH server to report status to MSH clients (e.g. = failure notifications, sending success notifications, error messages, = etc.)? Any ideas? Regards, -Patrick ----- Original Message -----=20 From: Mayne, Peter=20 To: 'ebx...@li...'=20 Sent: Tuesday, March 02, 2004 10:18 AM Subject: [ebxmlms-develop] Non-delivery notification Now that we have a production system up and running, there are = opportunities for improvement. :-)=20 One of these is notification of delivery failures. At the moment, = Hermes tries N times to deliver a message, and sends a failure message = to the back end on the Nth failure. What we'd really like to know, = though, is when each failure occurs, so when the first failure happens, = we can investigate why it is failing and hopefully fix it in time for a = retry to work. I don't think this can be done at the moment, but it would be nice to = make it an option to send a message to the back end saying "failure M of = N" each time a delivery attempt failure occurs. PJDM=20 --=20 Peter Mayne=20 Technology Consultant=20 Spherion Technology Solutions=20 Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602=20 T: 61 2 62689727 F: 61 2 62689777=20 |
|
From: Patrick Y. <kc...@ce...> - 2004-03-20 07:26:18
|
Hi Venkat,
Did the error occur during the first message being sent? Or during the =
second one being sent? Now, the exception is thrown when the MSH client =
tries to submit the message to be sent to the MSH server for sending =
out. Therefore, we suspect it is not due to duplication of message ID. =
Would you please send to us your msh_client.properties.xml, so that we =
can examine your settings? Thanks.
Regards, -Patrick
----- Original Message -----=20
From: Rao Yerubandi=20
To: ebx...@li...=20
Cc: yer...@su...=20
Sent: Friday, March 05, 2004 4:22 AM
Subject: [ebxmlms-develop] Duplicate Elimination not working
All,
to verify duplicate elimination i do the following=20
1] send a message with utility generated message. i
also store the message id.
2] then i try sending a second message with the
messageId generated from step [1]=20
i get the following error=20
12:12:09,888 ERROR [STDERR]
hk.hku.cecid.phoenix.message.handler.RequestException:
Fail to send EbxmlMessage to MessageServiceHandler:
HTTP response code =3D 200
HTTP response message =3D OK
12:12:09,888 ERROR [STDERR] at
=
hk.hku.cecid.phoenix.message.handler.Request.sendMessage(Request.java:159=
5)
12:12:09,888 ERROR [STDERR] at
hk.hku.cecid.phoenix.message.handler.Request.send(Request.java:1100)
12:12:09,898 ERROR [STDERR] at
Ping.runDuplicateElimination1(Ping.java:163)
12:12:09,898 ERROR [STDERR] at
Ping.doPost(Ping.java:54)
12:12:09,898 ERROR [STDERR] at
Ping.doGet(Ping.java:30)
12:12:09,898 ERROR [STDERR] at
javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
12:12:09,898 ERROR [STDERR] at
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat=
ionFilterChain.java:247)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte=
rChain.java:193)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve=
.java:256)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:643)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48=
0)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve=
.java:191)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:643)
12:12:09,898 ERROR [STDERR] at
=
org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityM=
grRealm.java:220)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:641)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.jav=
a:246)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:641)
12:12:09,898 ERROR [STDERR] at
=
org.jboss.web.tomcat.tc4.statistics.ContainerStatsValve.invoke(ContainerS=
tatsValve.java:76)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:641)
12:12:09,898 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48=
0)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417=
)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:=
180)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:643)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVal=
ve.java:171)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:641)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:=
172)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:641)
12:12:09,908 ERROR [STDERR] at
=
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAss=
ociationValve.java:65)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:641)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)=
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:641)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48=
0)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
12:12:09,908 ERROR [STDERR] at
=
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.j=
ava:174)
12:12:09,918 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in=
vokeNext(StandardPipeline.java:643)
12:12:09,918 ERROR [STDERR] at
=
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48=
0)
12:12:09,918 ERROR [STDERR] at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
12:12:09,918 ERROR [STDERR] at
=
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:197)
12:12:09,918 ERROR [STDERR] at
=
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781=
)
12:12:09,918 ERROR [STDERR] at
=
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processCo=
nnection(Http11Protocol.java:549)
12:12:09,918 ERROR [STDERR] at
=
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:605=
)
12:12:09,918 ERROR [STDERR] at
=
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.=
java:677)
12:12:09,918 ERROR [STDERR] at
java.lang.Thread.run(Thread.java:534)
Code Snippets
---------------
private void runDuplicateElimination1()
{
try
{
String cpaID =3D "cpa";
String conversationID =3D "DupElm";
String service =3D
"http://www.supplysolution.com/ebxml20";
String action =3D "DuplicateElimination";=20
String transportType =3D "HTTP";=20
// Sending the same message again to check if the
Duplicate Message Elimination
// is working .=20
// ebMSS [6.1] - Works based on MessageId in
persistent storage=20
Request mshReq1 =3D new Request(new
URL(toMshUrl),pong, transportType);
EbxmlMessage message1 =3D new EbxmlMessage();
MessageHeader header1 =3D
message1.addMessageHeader();
header1.addFromPartyId("fromPartyId", "Sample2");
header1.addToPartyId("toPartyId", "Sample2");
header1.setCpaId(cpaID);
header1.setConversationId(conversationID);
header1.setService(service);
header1.setAction(action);
header1.setTimestamp(Utility.toUTCString(new
Date()));
// turning on duplicate elimination=20
header1.setDuplicateElimination() ;
// using the same messageId generated in the
previous message=20
//header1.setMessageId(Utility.generateMessageId(new
Date(), message1));=20
header1.setMessageId( messageId);
message1.saveChanges();
System.out.println(" Sending a second message with
messageId of " + messageId + " to check " +
"DuplicateElimination with duplicate elimination
turned on ");
message1.writeTo(System.out);
mshReq1.send(message1);
mshReq1.unregister();
}
catch (Exception e)=20
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void runDuplicateElimination()
{
try
{
String cpaID =3D "cpa";
String conversationID =3D "DupElm";
String service =3D
"http://www.supplysolution.com/ebxml20";
String action =3D "DuplicateElimination";=20
String transportType =3D "HTTP";
Request mshReq =3D new Request(new
URL(toMshUrl),pong, transportType);
EbxmlMessage message =3D new EbxmlMessage();
MessageHeader header =3D message.addMessageHeader();
header.addFromPartyId("fromPartyId", "Sample2");
header.addToPartyId("toPartyId", "Sample2");
header.setCpaId(cpaID);
header.setConversationId(conversationID);
header.setService(service);
header.setAction(action);
header.setTimestamp(Utility.toUTCString(new
Date()));
header.setDuplicateElimination();
messageId =3D Utility.generateMessageId(new Date(),
message);
header.setMessageId(messageId);=20
message.saveChanges();
System.out.println(" Sending a message with
messageId of " + messageId + " to check " +
"DuplicateElimination ");
message.writeTo(System.out);
mshReq.send(message);
}
catch (Exception e)=20
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
please let me know if i am missing something.=20
from the spec looks like - duplication elimination has
to be done based on messageid.
-Venkat
__________________________________
Do you Yahoo!?
Yahoo! Search - Find what you're looking for faster
http://search.yahoo.com
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
=
administration.http://ads.osdn.com/?ad_id=3D1470&alloc_id=3D3638&op=3Dcli=
ck
_______________________________________________
ebxmlms-develop mailing list
ebx...@li...
https://lists.sourceforge.net/lists/listinfo/ebxmlms-develop
|
|
From: Yerubandi R. <Yer...@su...> - 2004-03-19 23:39:41
|
i am trying to write a servlet that receives all messages ( irrespective =
of cpaid, conversationid, service , action ).
i am trying something like this-----------
public class Pong extends HttpServlet implements MessageListener {
String toMshUrl =3D "http://192.168.18.72:8080/msh"; < peer MSH =
address>
String localMsh =3D "http://localhost:8080/msh/"; < localMSH address>
Request req =3D null;
=09
public void init(ServletConfig config) throws ServletException {
super.init(config); =09
try
{
ApplicationContext ac =3D new ApplicationContext( "*", "*", "*","*"); =
< wild card'ing > =09
req =3D new Request(ac,new URL( ),this,"HTTP"); /* from the doc's , =
looks like i need to do something like this */ =09
}
catch ( Exception ex)
{
ex.printStackTrace();
} =20
}
so my question is in the request object , what do i need to pass in for =
URL . if someone can explain in a detailed manner , i would really =
appreciate it.
i tried passing in the URL of http://localhost:8080/msh <my local MSH =
url > , then the servlet just hangs. i tried debugging it using JBossIDE =
and i see that it hangs in expectMapResponse() method of Request class.
-Venkat
---------------------------------------------------
Complete Code
---------------------------------------------------
import hk.hku.cecid.phoenix.message.handler.ApplicationContext;
import hk.hku.cecid.phoenix.message.handler.MessageListener;
import hk.hku.cecid.phoenix.message.handler.Request;
import hk.hku.cecid.phoenix.message.handler.Utility;
import hk.hku.cecid.phoenix.message.packaging.EbxmlMessage;
import hk.hku.cecid.phoenix.message.packaging.MessageHeader;
import java.io.IOException;
import java.net.URL;
import java.util.Date;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Pong extends HttpServlet implements MessageListener {
String toMshUrl =3D "http://192.168.18.72:8080/msh";
String localMsh =3D "http://localhost:8080/msh/";=09
Request req =3D null;
=09
public void init(ServletConfig config) throws ServletException {
super.init(config); =09
try
{
ApplicationContext ac =3D new ApplicationContext( "*", "*", "*","*"); =
=09
req =3D new Request(ac,new URL(localMsh),this,"HTTP"); =09
}
catch ( Exception ex)
{
ex.printStackTrace();
} =20
}
=20
public void doGet(HttpServletRequest request,HttpServletResponse =
response)
throws ServletException, IOException {
doPost(request,response);
}
=20
public void doPost(HttpServletRequest request,HttpServletResponse =
response)
throws ServletException, IOException { =09
}
=20
public URL getClientUrl() {
return null;
}
public void onMessage(EbxmlMessage ebxmlMessage)=20
{ =20
System.out.println(" SSI Incoming Message Handler "); =20
if ( ebxmlMessage.getErrorList() =3D=3D null)
{ =09
stdOut(ebxmlMessage);
} =09
}
=20
void stdOut(EbxmlMessage ebxmlMessage )
{
try
{
ebxmlMessage.writeTo(System.out);=20
System.out.flush();
}
catch( Exception ex)
{
ex.printStackTrace();
}
}
}
|
|
From: Rao Y. <ra...@ya...> - 2004-03-04 20:37:05
|
All,
to verify duplicate elimination i do the following
1] send a message with utility generated message. i
also store the message id.
2] then i try sending a second message with the
messageId generated from step [1]
i get the following error
12:12:09,888 ERROR [STDERR]
hk.hku.cecid.phoenix.message.handler.RequestException:
Fail to send EbxmlMessage to MessageServiceHandler:
HTTP response code = 200
HTTP response message = OK
12:12:09,888 ERROR [STDERR] at
hk.hku.cecid.phoenix.message.handler.Request.sendMessage(Request.java:1595)
12:12:09,888 ERROR [STDERR] at
hk.hku.cecid.phoenix.message.handler.Request.send(Request.java:1100)
12:12:09,898 ERROR [STDERR] at
Ping.runDuplicateElimination1(Ping.java:163)
12:12:09,898 ERROR [STDERR] at
Ping.doPost(Ping.java:54)
12:12:09,898 ERROR [STDERR] at
Ping.doGet(Ping.java:30)
12:12:09,898 ERROR [STDERR] at
javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
12:12:09,898 ERROR [STDERR] at
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
12:12:09,898 ERROR [STDERR] at
org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrRealm.java:220)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
12:12:09,898 ERROR [STDERR] at
org.jboss.web.tomcat.tc4.statistics.ContainerStatsValve.invoke(ContainerStatsValve.java:76)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
12:12:09,898 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
12:12:09,908 ERROR [STDERR] at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:65)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
12:12:09,908 ERROR [STDERR] at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
12:12:09,918 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
12:12:09,918 ERROR [STDERR] at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
12:12:09,918 ERROR [STDERR] at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
12:12:09,918 ERROR [STDERR] at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:197)
12:12:09,918 ERROR [STDERR] at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
12:12:09,918 ERROR [STDERR] at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:549)
12:12:09,918 ERROR [STDERR] at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:605)
12:12:09,918 ERROR [STDERR] at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:677)
12:12:09,918 ERROR [STDERR] at
java.lang.Thread.run(Thread.java:534)
Code Snippets
---------------
private void runDuplicateElimination1()
{
try
{
String cpaID = "cpa";
String conversationID = "DupElm";
String service =
"http://www.supplysolution.com/ebxml20";
String action = "DuplicateElimination";
String transportType = "HTTP";
// Sending the same message again to check if the
Duplicate Message Elimination
// is working .
// ebMSS [6.1] - Works based on MessageId in
persistent storage
Request mshReq1 = new Request(new
URL(toMshUrl),pong, transportType);
EbxmlMessage message1 = new EbxmlMessage();
MessageHeader header1 =
message1.addMessageHeader();
header1.addFromPartyId("fromPartyId", "Sample2");
header1.addToPartyId("toPartyId", "Sample2");
header1.setCpaId(cpaID);
header1.setConversationId(conversationID);
header1.setService(service);
header1.setAction(action);
header1.setTimestamp(Utility.toUTCString(new
Date()));
// turning on duplicate elimination
header1.setDuplicateElimination() ;
// using the same messageId generated in the
previous message
//header1.setMessageId(Utility.generateMessageId(new
Date(), message1));
header1.setMessageId( messageId);
message1.saveChanges();
System.out.println(" Sending a second message with
messageId of " + messageId + " to check " +
"DuplicateElimination with duplicate elimination
turned on ");
message1.writeTo(System.out);
mshReq1.send(message1);
mshReq1.unregister();
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void runDuplicateElimination()
{
try
{
String cpaID = "cpa";
String conversationID = "DupElm";
String service =
"http://www.supplysolution.com/ebxml20";
String action = "DuplicateElimination";
String transportType = "HTTP";
Request mshReq = new Request(new
URL(toMshUrl),pong, transportType);
EbxmlMessage message = new EbxmlMessage();
MessageHeader header = message.addMessageHeader();
header.addFromPartyId("fromPartyId", "Sample2");
header.addToPartyId("toPartyId", "Sample2");
header.setCpaId(cpaID);
header.setConversationId(conversationID);
header.setService(service);
header.setAction(action);
header.setTimestamp(Utility.toUTCString(new
Date()));
header.setDuplicateElimination();
messageId = Utility.generateMessageId(new Date(),
message);
header.setMessageId(messageId);
message.saveChanges();
System.out.println(" Sending a message with
messageId of " + messageId + " to check " +
"DuplicateElimination ");
message.writeTo(System.out);
mshReq.send(message);
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
please let me know if i am missing something.
from the spec looks like - duplication elimination has
to be done based on messageid.
-Venkat
__________________________________
Do you Yahoo!?
Yahoo! Search - Find what youre looking for faster
http://search.yahoo.com
|
|
From: Bob K. <py...@ce...> - 2004-03-03 01:59:09
|
Thanks for your suggestion. I am sorry that I am in rush on another project in these few weeks, therefore as you say, it cannot be done at the moment. I will discuss with Patrick for this issue later. Regards, Bob Koon Mayne, Peter wrote: > Now that we have a production system up and running, there are > opportunities for improvement. :-) > > One of these is notification of delivery failures. At the moment, > Hermes tries N times to deliver a message, and sends a failure message > to the back end on the Nth failure. What we'd really like to know, > though, is when each failure occurs, so when the first failure > happens, we can investigate why it is failing and hopefully fix it in > time for a retry to work. > > I don't think this can be done at the moment, but it would be nice to > make it an option to send a message to the back end saying "failure M > of N" each time a delivery attempt failure occurs. > > PJDM > -- > Peter Mayne > Technology Consultant > Spherion Technology Solutions > Level 1, 243 Northbourne Avenue, Lyneham, ACT, 2602 > T: 61 2 62689727 F: 61 2 62689777 > |
|
From: Gait B. <gai...@ti...> - 2004-02-10 09:11:52
|
well, something's wrong for sure :-)
to set up https client/server communication, you need to set the URL =
property in the msh_client.properties.xml:
<Property>
<Request>
...
<Config>
<URL>https://localhost:8443/msh</URL>
...
setting in my LoopBack.java =20
String transportType =3D "https";
String toMshUrl =3D "https://localhost:8443/msh";
would make tomcat talk to itself (toMshUrl is the 'other' MSH server). I =
presume you set=20
String toMshUrl =3D "https://localhost:9453/msh";
as that is where the message is sent, judging from msh.log.
The server at https://localhost:9453/msh sent a certificate that is not =
trusted by your MSH (https://localhost:8443/msh), and SSL authentication =
fails.=20
The security settings in msh.properties.xml have nothing to do with SSL, =
SSL handshake is a function of tomcat's HTTPS forwarding, and what you =
need to do in this case is add the https://localhost:9453/msh =
certificate signer to the default cacerts file in the JRE that tomcat is =
using, that's <JRE>/lib/security/cacerts. If the certificate is =
self-signed, just add that, otherwise you'll need to add the signer's =
certificate....
Also note that the certificate's CN sent by https://localhost:9453/msh =
must say localhost (you may get away with 1.0.0.127, not entirely sure), =
otherwise the SSL lib's will complain about a server name mismatch.
--Gait Boxman.
----- Original Message -----=20
From: henry=20
To: ebx...@li...=20
Sent: Tuesday, February 10, 2004 4:18 AM
Subject: [ebxmlms-develop] about Hermes & SSL
Hi :
=20
I hava some program about herms , I want use ssl ..
my job like that
client ----> msh.clinet ------> msh.server ----> server
http https http
in my LoopBack.java =20
String transportType =3D "https";
String toMshUrl =3D "https://localhost:8443/msh";
in msh.properties.xml =20
<TrustedAnchor>
<KeyStore>
<Path>C:\JBuilder7\j2sdk1.4.2\jre\lib\security</Path>
<File>cacerts</File>
<Password>root</Password>
</KeyStore>
</TrustedAnchor>
my tomcat https://localhost:8443/ is ok ...=20
but when I run LoopBack.java something wrong
tomcat's log
=20
javax.net.ssl.SSLHandshakeException: =
sun.security.validator.ValidatorException:
No trusted certificate found
at =
com.sun.net.ssl.internal.ssl.BaseSSLSocketImpl.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SunJSSE_az.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SunJSSE_az.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SunJSSE_ax.a(DashoA6275)
....
in msh's log
2004-02-10 11:00:49,021 INFO [Thread-16]: Sending message to =
https://localhost:9453/msh
ERROR [Thread-16]: [10505] Cannot send SOAP message
Exception: com.sun.xml.messaging.saaj.SOAPExceptionImpl
(localhost:9543 is msh.server )
what's wrong ?
thx..
=
henry |
|
From: henry <hen...@ec...> - 2004-02-10 03:18:31
|
Hi :
=20
I hava some program about herms , I want use ssl ..
my job like that
client ----> msh.clinet ------> msh.server ----> server
http https http
in my LoopBack.java=20
String transportType =3D "https";
String toMshUrl =3D "https://localhost:8443/msh";
in msh.properties.xml =20
<TrustedAnchor>
<KeyStore>
<Path>C:\JBuilder7\j2sdk1.4.2\jre\lib\security</Path>
<File>cacerts</File>
<Password>root</Password>
</KeyStore>
</TrustedAnchor>
=20
my tomcat https://localhost:8443/ is ok ...
but when I run LoopBack.java something wrong
tomcat's log
=20
javax.net.ssl.SSLHandshakeException: =
sun.security.validator.ValidatorException:
No trusted certificate found
at com.sun.net.ssl.internal.ssl.BaseSSLSocketImpl.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SunJSSE_az.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SunJSSE_az.a(DashoA6275)
at com.sun.net.ssl.internal.ssl.SunJSSE_ax.a(DashoA6275)
....
in msh's log
2004-02-10 11:00:49,021 INFO [Thread-16]: Sending message to =
https://localhost:9453/msh
ERROR [Thread-16]: [10505] Cannot send SOAP message
Exception: com.sun.xml.messaging.saaj.SOAPExceptionImpl
(localhost:9543 is msh.server )
what's wrong ?
thx..
=
henry |