Hi,
I just redeployed the Muse 2.2.0 wsn-consumer and wsn-producer samples
to a local Tomcat 5.5 server on Windows XP.  Then I ran the
WsnTestClient in wsn-consumer.  Everything works fine for me, and
notifictions are being received properly every 10 seconds.

You shouldn't need to modify anything since the samples should be
runnable "out of the box".

Here's the steps to reproduce the test
1) In the wsn-producer project, do "ant".
   Then manually deploy the wsn-producer.war to C:\tomcat\webapps\
2) In the wsn-consumer project, do "ant".
   Then manually deploy the wsn-consumer.war to C:\tomcat\webapps\
3) Start your Tomcat.
4) In the wsn-consumer project, do "ant
-Dmain=org.apache.muse.test.wsn.WsnTestClient run".
   The console should show the SOAP trace for the Subscribe
request/response.
5) Check for notifications in
C:\tomcat\webapps\wsn-consumer\WEB-INF\classes\log\muse.log

Hope this helps...
-Vinh


-----Original Message-----
From: Lenni Madsen [mailto:[EMAIL PROTECTED] 
Sent: Monday, April 28, 2008 6:51 AM
To: [email protected]
Subject: SV: trouble with WsnTestClient after new wsn-producer.war file

Hmm... this issue warrants a bit more exploring from my side, for some
reason I seem to have problems with the subscription manager for
muse-2.3.0-2008-04-07-02-00-bin, it keeps reporting:

[Fatal Error] :12:184: The element type "HR" must be terminated by the
matching end-tag "</HR>".
org.apache.muse.ws.addressing.soap.SoapFault: The element type "HR" must
be terminated by the matching end-tag "</HR>".
        at
org.apache.muse.core.AbstractResourceClient.invoke(AbstractResourceClien
t.ja
va:298)
        at
org.apache.muse.core.AbstractResourceClient.invoke(AbstractResourceClien
t.ja
va:254)
        at
org.apache.muse.ws.notification.remote.NotificationProducerClient.subscr
ibe(
NotificationProducerClient.java:97)
        at
org.apache.muse.test.wsn.WsnTestClient.main(WsnTestClient.java:79)

yet the subscription mechanism seems to work:

*#*# message accepted #*#*
2008-04-28 15:47:28 org.apache.muse.test.wsn.impl.ConsumerCapabilityImpl
process

INFO: Received message:

<wsnt:NotificationMessage
    xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2";
    xmlns:muse-wsa="http://ws.apache.org/muse/addressing";
    xmlns:tns="http://ws.apache.org/muse/test/wsrf";
xmlns:wsa="http://www.w3.org
/2005/08/addressing">
    <wsnt:SubscriptionReference>
        <wsa:Address
xmlns:wsa="http://www.w3.org/2005/08/addressing";>http://10.
0.19.16:8080/wsn-producer/services/SubscriptionManager</wsa:Address>
        <wsa:ReferenceParameters
xmlns:wsa="http://www.w3.org/2005/08/addressing
">
            <muse-wsa:ResourceId
xmlns:muse-wsa="http://ws.apache.org/muse/addre
ssing">MuseResource-1</muse-wsa:ResourceId>
        </wsa:ReferenceParameters>
    </wsnt:SubscriptionReference>
    <wsnt:Topic
 
Dialect="http://docs.oasis-open.org/wsn/t-1/TopicExpression/Concrete"; xm
lns:tns="http://ws.apache.org/muse/test/wsrf";>tns:MyTopic</wsnt:Topic>
    <wsnt:ProducerReference>
        <wsa:ReferenceParameters
xmlns:wsa="http://www.w3.org/2005/08/addressing
"/>
        <wsa:Address
xmlns:wsa="http://www.w3.org/2005/08/addressing";>http://10.
0.19.16:8080/wsn-producer/services/WsResource</wsa:Address>
    </wsnt:ProducerReference>
    <wsnt:Message>
        <tns:MyMessage
xmlns:tns="http://ws.apache.org/muse/test/wsrf";>This
is a
 message from muse-test.apache.org</tns:MyMessage>
    </wsnt:Message>
</wsnt:NotificationMessage>

[Fatal Error] :12:184: The element type "HR" must be terminated by the
matching end-tag "</HR>".
2008-04-28 15:47:29 org.apache.muse.util.LoggingUtils logError
INFO: There was an error while processing a request:

The element type "HR" must be terminated by the matching end-tag
"</HR>".

 
org.apache.muse.core.AbstractResourceClient.invoke(AbstractResourceClien
t.java:298)
 
org.apache.muse.core.AbstractResourceClient.invoke(AbstractResourceClien
t.java:254)
 
org.apache.muse.ws.notification.remote.NotificationConsumerClient.notify
(NotificationConsumerClient.java:99)
 
org.apache.muse.ws.notification.impl.SimpleSubscriptionManager.publish(S
impleSubscriptionManager.java:267)
 
org.apache.muse.ws.notification.impl.SimpleNotificationProducer.publish(
SimpleNotificationProducer.java:525)
 
org.apache.muse.ws.notification.impl.SimpleNotificationProducer.publish(
SimpleNotificationProducer.java:500)
 
org.apache.ws.muse.test.wsrf.MyCapabilityImpl$1.run(MyCapabilityImpl.jav
a:104)

------------------------------------------

I think I need to revert to a earlier version of my setup to make sure
that it's not just a fault in my setup.

FYI: if you use tomcat 6.0.16 you'll run into some warnings regarding
listeners already registered
http://forum.springframework.org/showthread.php?p=175433


-----Oprindelig meddelelse-----
Fra: Irfan Emrah Kanat [mailto:[EMAIL PROTECTED]
Sendt: 28. april 2008 11:48
Til: [email protected]
Emne: Re: trouble with WsnTestClient after new wsn-producer.war file

Thanks for your prompt reply Mr. Madsen

The below approach does not fit me as I modified the MyCapability.java
as given below:

//
    // MyCapability.java
    // Tue Apr 22 16:45:01 EEST 2008
    // Generated by the Apache Muse Code Generation Tool
    //
    package org.apache.ws.muse.test.wsrf;

    import javax.xml.namespace.QName;

    import org.w3c.dom.Element;

    import org.apache.muse.util.xml.XmlUtils;
    import org.apache.muse.ws.addressing.soap.SoapFault;
    import org.apache.muse.ws.notification.NotificationProducer;
    import org.apache.muse.ws.notification.WsnConstants;
    import
org.apache.muse.ws.resource.impl.AbstractWsResourceCapability;

    public class MyCapability extends AbstractWsResourceCapability
implements IMyCapability
    {
        private static final QName[] _PROPERTIES = new QName[] {
                new QName(NAMESPACE_URI, "MessageInterval", PREFIX),
                new QName(NAMESPACE_URI, "ServerName", PREFIX)
        };

        private static final QName _TOPIC_NAME = new
QName(NAMESPACE_URI, "MyTopic", PREFIX);

        public QName[] getPropertyNames()
        {
            return _PROPERTIES;
        }

    // You can assign any value you may want to the two variables below.
        private int _MessageInterval = 10;

        private String _ServerName = "muse-test.apache.org";

        public int getMessageInterval()
        {
            return _MessageInterval;
        }

        public void setMessageInterval(int param0)
        {
            _MessageInterval = param0;
        }

        public String getServerName()
        {
            return _ServerName;
        }

        public void setServerName(String param0)
        {
            _ServerName = param0;
        }

        public void initializeCompleted()
            throws SoapFault
        {
            super.initializeCompleted();

            //
            // access resource's WSN capability and create a new topic
            //
            final NotificationProducer wsn =
(NotificationProducer)getResource().getCapability(WsnConstants.PRODUCER_
URI)
;

            wsn.addTopic(_TOPIC_NAME);

            Thread producer = new Thread() {
                public void run()
                {
                    //
                    // for this example, reuse one payload for every
notification
                    //
                    QName messageName = new QName(NAMESPACE_URI,
"MyMessage", PREFIX);
                    String message = "This is a message from " +
getServerName();
                    Element payload =
XmlUtils.createElement(messageName,
message);

                    while (true)
                    {
                        try
                        {
                            //
                            // read current value - property is mutable
                            //
                            int currentInterval = getMessageInterval();

                            getLog().info("Waiting " + currentInterval +
"
seconds before sending message...");
                            Thread.currentThread().sleep(currentInterval
* 1000);

                            //
                            // use WSN capability to send message to any
subscribers
                            //
                            getLog().info("Sending message to
consumers...");
                            wsn.publish(_TOPIC_NAME, payload);
                        }

                        catch (Throwable error)
                        {
                            error.printStackTrace();
                        }
                    }
                }
            };
            producer.start();
        }
    }

    It is almost identical to the source code given with muse.

On Mon, Apr 28, 2008 at 12:43 PM, Lenni Madsen <[EMAIL PROTECTED]> wrote:

> A thing just occurred to me, the people affected by this issue seems 
> to follow the following approach (please correct me when/if I'm wrong,

> I'll assume this is correctly understood until further notice):
>
>
>
> 1)       wsdl2java is called on one or more wsdl's from the sample-wsn
> project
>
> 2)       no code is edited after wsdl2java is called (no files are
copied
> to
> the project after wsdl2java is called either)
>
> 3)       the war file is deployed
>
> 4)       the project experiences one or more errors
>
>
>
> from my past experiences with the sample-wsn project and indeed any 
> further development issues I have had with wsn, one needs to make sure

> that the generated code is edited to be up to spec, for one thing some

> important wsn-producer code is not put in the MyCapability.java (might

> have another name if you're using the more advance naming options) 
> initialize function.
>
>
>
> *** what you get ***
>
> public void initialize() throws SoapFault
>
>    {
>
>        //
>
>        //The following call is necessary to property initialize the 
> resource
>
>        //
>
>        super.initialize();
>
>
>
>        //
>
>        //TODO perform intitialization of the following non-primitive 
> properties
>
>        //
>
>        // ServerName
>
>        //
>
>
>
>        throw new RuntimeException("User needs to update initialization

> code");
>
> }
>
>
>
> *** what you need for the sample-wsn ***
>
> public void initialize() throws SoapFault
>
>    {
>
>        //
>
>        //The following call is necessary to property initialize the 
> resource
>
>        //
>
>        super.initialize();
>
>
>
>        //
>
>        //TODO perform intitialization of the following non-primitive 
> properties
>
>        //
>
>        // ServerName
>
>        //
>
>
>
> //        throw new RuntimeException("User needs to update
initialization
> code");
>
>        _ServerName = "sample-wsn-producer";
>
>        wsn =
>
>
(NotificationProducer)getResource().getCapability(WsnConstants.PRODUCER_
URI)
> ;
>
>        // move this code below to a function if you wish to use it 
> when called and not continuously
>
>        QName topicName = new 
> QName("http://example.com/server-product";,
> "ServerUpdates");
>
>        wsn.addTopic(topicName);
>
>        QName messageName = new 
> QName("http://example.com/server-product";,
> "UpdateMessage");
>
>        String updateMessage = "Something important happened!";
>
>        Element payload = XmlUtils.createElement(messageName,
> updateMessage);
>
>        wsn.publish(topicName, payload);
>
>    }
>
>
>
> Not sure if it helps at all, but at least it closes one possible issue

> related to starting up the application and initialization of the
producer.
>
>
>
> Mr. Kanat, please don't worry about replying to the mail group message

> it's here for questions and debate regarding the use of the Muse 
> framework and I find I learn new things every time I have a look at 
> other peoples issues with Muse. sometimes a solution for a problems 
> ends up enhancing my own projects.
>
>
>
> /Lenni
>
>  _____
>
> Fra: Irfan Emrah Kanat [mailto:[EMAIL PROTECTED]
> Sendt: 28. april 2008 10:56
> Til: [email protected]
> Emne: Re: trouble with WsnTestClient after new wsn-producer.war file
>
>
>
> I am not sure if this is the right way to reply to a mail group 
> message but it is my first time so forgive me just this once.
>
> I set the binding in wsdl file as I stated earlier but here, I am 
> attaching my wsdl file here.
>
> There is also another problem. I guess Mr. Nguyen is right as my app 
> does not seem to be starting up. As I posted in my previous post, I 
> build it as an axis2 app. but in tomcat manager I can not see the 
> usual web interface of axis2. I get an HTTP Status 500 error. It seems

> to me that my app is not built correctly. The fact that I am getting a

> cygwin error alleviates my belief.
>
> Here is the command I issue and the error message I get:
>
> [EMAIL PROTECTED]:~/Desktop/samp$ sudo sh 
> /opt/muse-2.2.0-bin/bin/wsdl2java.sh -j2ee axis2 -wsdl 
> sample-wsn-producer.wsdl -output wsn-srv/ -overwrite
> [: 38: cygwin: unexpected operator
> [EMAIL PROTECTED]:~/Desktop/samp$
>
> If there is anything else I can provide please let me know...
>
>
>
>
>
>
>
> On Mon, Apr 28, 2008 at 9:08 AM, Lenni Madsen <[EMAIL PROTECTED]> wrote:
>
> Hi there
>
> Could you attach your wsdl file? It might be something fairly simple 
> and therefore easy to overlook in the wsdl, I know I've missed small 
> important stuff time and time again.
>
>
> [Fatal Error] :1:1040: The element type "HR" must be terminated by the
> > matching end-tag "</HR>".
> > org.apache.muse.ws.addressing.soap.SoapFault: The element type "HR"
> > must be terminated by the matching end-tag "</HR>".
>
> This error comes when you're trying to use a wrong or incomplete 
> EndpointReference. The error message is very generic.
>
> /Lenni
>
>
> -----Oprindelig meddelelse-----
> Fra: dulbirakan [mailto:[EMAIL PROTECTED]
> Sendt: 27. april 2008 23:19
> Til: [email protected]
> Emne: Re: trouble with WsnTestClient after new wsn-producer.war file
>
>
>
> I had the same problem, infact I still have it.
>
> I used muse 2.2.0's wsdl2java in ubuntu linux (7.10 and 8.04) both to 
> no avail but it worked under windows XP in my advisors computer.
>
> First I change the binding in sample-wsn-producer.wsdl to point to my 
> producer (wsn-srv) then I change the source of wsn-consumers test 
> class to point to my producer. Then I issue wsdl2java command and
deploy services.
> I
> get the same error message you are getting (the one with HR). I also 
> deployed one with default settings, it was a no go also.
>
> I issue:
>
> $ sudo sh /opt/muse-2.2.0-bin/bin/wsdl2java.sh -j2ee axis2 -wsdl 
> sample-wsn-producer.wsdl -output wsn-srv/ -overwrite
>
> I get a :
> [: 38: cygwin: unexpected operator
>
> but everything seems to be in place and I run ant and copy the 
> resulting war files to my tomcat webapps folder. These war files 
> however, once deployed do not act as axis2 services. When I click on 
> one in tomcat manager I see the following message instead of the usual

> axis2 web interface:
>
> HTTP Status 500 -
>
> type Exception report
>
> message
>
> description The server encountered an internal error () that prevented

> it from fulfilling this request.
>
> exception
>
> org.apache.jasper.JasperException: java.lang.NullPointerException
>
>
>
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServle
tWra
> pper.java:522)
>
>
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:3
> 56)
>
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>
>
>
org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.ja
va:9
> 68)
>
> org.apache.jsp.axis2_002dweb.index_jsp._jspService(index_jsp.java:78)
>
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>
>
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:3
> 74)
>
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>
> root cause
>
> java.lang.NullPointerException
>
>
>
org.apache.jsp.axis2_002dweb.include.httpbase_jsp.jspInit(httpbase_jsp.j
ava:
> 22)
>       org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:51)
>
>
>
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper
.jav
> a:159)
>
>
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:3
> 29)
>
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>
>
>
org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.ja
va:9
> 68)
>
> org.apache.jsp.axis2_002dweb.index_jsp._jspService(index_jsp.java:78)
>
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>
>
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:3
> 74)
>
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>
> note The full stack trace of the root cause is available in the Apache
> Tomcat/6.0.16 logs.
> Apache Tomcat/6.0.16
>
>
> I really would appreciate if it would just run under ubuntu.
>
> I guess the problem might be related to the cygwin problem I stated 
> earlier.
> Does any one have any clue?
>
>
> dchou wrote:
> >
> > Hello,
> >
> > I am able to drop the sample wsn-producer.war and wsn-consumer.war 
> > files into my Tomcat and they run fine when I run the WsnTestClient.

> > However, when I do a wsdl2java build in the wsn-producer directory 
> > then build a
> new
> > war using Ant. I get an error message with this newly created 
> > wsn-producer.war. I have changed no code. Only performed wsdl2java 
> > and ant. The steps and error I get when I run the WsnTestClient is 
> > as
> follows:
> >
> > $wsdl2java -j2ee axis2 -overwrite -wsdl wsdl/WsResource.wsdl
> >
> > $ ant-1.6.5/bin/ant
> >
> > I then run the test client, WsnTestClient and get the following
output:
> >
> > [CLIENT TRACE] SOAP envelope contents (outgoing):
> >
> > <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope";>
> >     <soap:Header>
> >         <wsa:To
> >
> xmlns:wsa="http://www.w3.org/2005/08/addressing";>
> http://166.21.9.161:8080/ws
> <http://166.21.9.161:8080/wsn-producer/services/WsResource>
> n-producer/services/WsResource</wsa:To>
> >         <wsa:Action
> >
> xmlns:wsa="http://www.w3.org/2005/08/addressing";>
> http://docs.oasis-open.org/
> <http://docs.oasis-open.org/wsn/bw-2/NotificationProducer/SubscribeReq
> uest
> >
> wsn/bw-2/NotificationProducer/SubscribeRequest</wsa:Action>
> >         <wsa:MessageID
> >
> xmlns:wsa="http://www.w3.org/2005/08/addressing
> ">uuid:f6255f7a-9b73-1057-462
> 0-a4ec2be5ff0a</wsa:MessageID>
> >         <wsa:From xmlns:wsa="http://www.w3.org/2005/08/addressing";>
> >
> >
> <wsa:Address>http://www.w3.org/2005/08/addressing/role/anonymous
> </wsa:Addres
> s>
> >         </wsa:From>
> >     </soap:Header>
> >     <soap:Body>
> >         <wsnt:Subscribe
xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2";>
> >             <wsnt:ConsumerReference>
> >                 <wsa:Address
> >
> xmlns:wsa="http://www.w3.org/2005/08/addressing";>
> http://166.21.9.175:8060/ws
> <http://166.21.9.175:8060/wsn-consumer/services/consumer>
> n-consumer/services/consumer</wsa:Address>
> >             </wsnt:ConsumerReference>
> >         </wsnt:Subscribe>
> >     </soap:Body>
> > </soap:Envelope>
> >
> > [Fatal Error] :1:1040: The element type "HR" must be terminated by 
> > the matching end-tag "</HR>".
> > org.apache.muse.ws.addressing.soap.SoapFault: The element type "HR" 
> > must be terminated by the matching end-tag "</HR>".
> >         at
> >
>
>
org.apache.muse.core.AbstractResourceClient.invoke(AbstractResourceClien
t.ja
> va:298)
> >         at
> >
>
>
org.apache.muse.core.AbstractResourceClient.invoke(AbstractResourceClien
t.ja
> va:254)
> >         at
> >
>
>
org.apache.muse.ws.notification.remote.NotificationProducerClient.subscr
ibe(
> NotificationProducerClient.java:97)
> >         at org.apache.muse.test.wsn.WsnTestClient.main(Unknown 
> > Source)
> >
> > Does anyone have any idea what I am doing wrong? I have changed no
code.
> I
> > just wanted to try and build a new war with the method outlined in 
> > the tutorial. Any help would be appreciated.
> >
> > Thanks,
> > Dave
> >
>
> --
> View this message in context:
>
>
http://www.nabble.com/trouble-with-WsnTestClient-after-new-wsn-producer.
war-
> <
>
http://www.nabble.com/trouble-with-WsnTestClient-after-new-wsn-producer.
war
>
-file-tp10191599p16928534.html<http://www.nabble.com/trouble-with-WsnTes
tCli
ent-after-new-wsn-producer.war-file-tp10191599p16928534.html>
> >
> file-tp10191599p16928534.html
> Sent from the Muse User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to