Ok, correct me if I'm wrong...I think what you're really asking is how
does the wsn-consumer and wsn-producer examples work?  The wsn-producer
sample has a custom WsResource.wsdl for the producer, but the
wsn-consumer sample has no custom wsdl for the consumer.

The reason why the consumer currently doesn't have a custom wsdl is
because it doesn't need one.
It inherits directly from WS-BaseNotification-1_3.wsdl.

If you study the wsn-consumer example, the key files are:
muse.xml
WsnTestClient.java
ConsumerCapabilityImpl.java

In muse.xml, there is a "consumer" resource that uses the
WS-BaseNotification-1_3.wsdl.  The resource has one custom capability,
which is the ConsumerCapabilityImpl class.

The ConsumerCapabilityImpl just prints the notification messages to the
log files so you know what it receives.

WsnTestClient.java is a remote client that connects to the producer
resource, and registers the consumer resource to it for notifications.
Basically, the WsnTestClient acts as an intermediate "service" that
registers consumers to producers.

In your case, you will not need WsnTestClient.  Your resources will
connect directly to the producer and register themselves as consumers,
in a similar way to what WsnTestClient is doing.


 

-----Original Message-----
From: Callner, David A. [mailto:[EMAIL PROTECTED] 
Sent: Friday, March 23, 2007 10:37 AM
To: [email protected]
Subject: RE: Publisher Consumer

The following wsdl throws the exception below.  I've tried it this way
before and got the exception below then I tried adding a ServiceName,
etc and I would get another exception.  What do I need to have a
Consumer???

 <?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
targetNamespace="http://localhost.mitre.org/track-consumer";
        xmlns:tns="http://localhost.mitre.org/track-consumer";
        xmlns="http://schemas.xmlsoap.org/wsdl/";
        xmlns:wsa="http://www.w3.org/2005/08/addressing";
        xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
        xmlns:wsdl-soap="http://schemas.xmlsoap.org/wsdl/soap/";
        xmlns:xsd="http://www.w3.org/2001/XMLSchema";
        xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2";
        xmlns:wsntw="http://docs.oasis-open.org/wsn/bw-2";
        name="Consumer">
        <wsdl:types>
                <xsd:schema elementFormDefault="qualified"
        
targetNamespace="http://docs.oasis-open.org/wsn/b-2";>
                        <xsd:include
schemaLocation="WS-BaseNotification-1_3.xsd" />
                </xsd:schema>
        </wsdl:types>
        <!-- ========== NotificationProducer::GetCurrentMessage
=========== 
                GetCurrentMessage(topicExpression)
                returns: a NotificationMessage (xsd:any)
        -->
   <wsdl:message name="Notify">
      <wsdl:part name="Notify" element="wsnt:Notify"/>
   </wsdl:message>

    <wsdl:portType name="NotificationConsumer">
             <wsdl:operation name="Notify">
                       <wsdl:input
wsa:Action="http://docs.oasis-open.org/wsn/bw-2/NotificationConsumer/No
tifyRequest"
                           message="wsntw:Notify" />
                               </wsdl:operation>
    </wsdl:portType>

</wsdl:definitions>

java.lang.RuntimeException: [ID = 'OneServicePerWSDL'] The resource
inspector can only process WSDLs with one service element.
        at
org.apache.muse.tools.inspector.ResourceInspector.getPortType(ResourceI
nspector.java:619)
   at
org.apache.muse.tools.inspector.ResourceInspector.run(ResourceInspector
.java:839)
       at
org.apache.muse.tools.generator.analyzer.SimpleAnalyzer.inspect(SimpleA
nalyzer.java:392)
     at
org.apache.muse.tools.generator.analyzer.SimpleAnalyzer.analyze(SimpleA
nalyzer.java:338)
       at
org.apache.muse.tools.generator.Wsdl2Java.run(Wsdl2Java.java:143)
 at
org.apache.muse.tools.generator.Wsdl2Java.main(Wsdl2Java.java:260)

SEVERE: [ID = 'CodeGenFailed'] Code generation failed, see the exception
information below.

An exception was caught: [ID = 'OneServicePerWSDL'] The resource
inspector can only      process WSDLs with one service element.




-----Original Message-----
From: Daniel Jemiolo [mailto:[EMAIL PROTECTED]
Sent: Friday, March 23, 2007 11:41 AM
To: [email protected]
Subject: RE: Publisher Consumer

The WSDL fragment below represents all of the code you need to provide
for WSN Notify, save for the WSDL <binding/>. It's the same XML from
WS-BaseNotification-1_3.wsdl, which is used in the wsn-consumer project.

<wsdl:types>
  <xsd:schema>
    <xsd:import
         namespace="http://docs.oasis-open.org/wsn/b-2"; 
         schemaLocation="WS-BaseNotification-1_3.xsd"/>
  </xsd:schema>
</wsdl:types>

<wsdl:message name="Notify">
  <wsdl:part name="Notify" element="wsnt:Notify"/> </wsdl:message>

<wsdl:portType name="NotificationConsumer">
  <wsdl:operation name="Notify">
    <wsdl:input 
 
wsa:Action="http://docs.oasis-open.org/wsn/bw-2/NotificationConsumer/No
tifyRequest" 

          message="wsntw:Notify" />
  </wsdl:operation>
</wsdl:portType>



"Callner, David A." <[EMAIL PROTECTED]> wrote on 03/23/2007 11:03:44
AM:

> Dan,
> If you could just give me the wsdl you used to create the
wsn-consumer
> I should be able to figure it out from there.  Why isn't that 
> distributed in the examples?
> 
> -----Original Message-----
> From: Daniel Jemiolo [mailto:[EMAIL PROTECTED]
> Sent: Friday, March 23, 2007 11:00 AM
> To: [email protected]
> Subject: RE: Publisher Consumer
> 
> Your attachments didn't come through - can create a JIRA item and 
> attach the files there?
> 
> Thanks,
> Dan
> 
> 
> 
> "Callner, David A." <[EMAIL PROTECTED]> wrote on 03/23/2007 10:37:25
> AM:
> 
> > This doesn't seem to work for me.  I've attached my files.  I've 
> > stripped them down to just have the Notify Consumer info that you 
> > describe below but when I can get it to create the code it only
> creates
> > code like that of the producer. 
> > 
> > -----Original Message-----
> > From: Daniel Jemiolo [mailto:[EMAIL PROTECTED]
> > Sent: Thursday, March 22, 2007 10:20 AM
> > To: [email protected]
> > Subject: Re: Publisher Consumer
> > 
> > The wsn-consumer resource uses the NotificationConsumer portType in

> > WS-BaseNotification-1_3.wsdl file - this is mapped in muse.xml,
under
> > the
> > <resource-type><wsdl> element. The sample has nothing but WSN 
> > NotificationConsumer in its interface.
> > 
> > All you need to do to add NotiifcationConsumer to your app is to
add
> > the
> > contents of NotificationConsumer portType (which is just the Notify

> > operation) to your own WSDL's portType. Be sure to include the 
> > <message/> and XSD definition for Notify, just as 
> > WS-BaseNotification-1_3.wsdl does.
> > When you run wsdl2java, it will notice the WSN Notify operation and
> add
> > 
> > Muse's NOtificationConsumer capabilty to your resource definition.
> > 
> > Dan
> > 
> > 
> > 
> > "Callner, David A." <[EMAIL PROTECTED]> wrote on 03/22/2007
07:45:59
> > AM:
> > 
> > >  There is an example of the wsn-producer and wsn-consumer.  I
want
> to
> > > deploy a web service that is a producer and I want clients to be
> able
> > > to create wsn-consumer's on there own.  Could somebody explain to
> me
> > > how the wsn-consumer was created?  The wsdl for the wsn-producer
> does
> > > not show in a browser and I see no way to generate the code from
> the
> > > wsdl from the wsn-producer.  I can generate the code for the 
> > > wsn-producer from the wsdl, but how does one create a consumer.
Is
> > > everybody expected to start with a wsn-consumer and hack up there
> own
> > > wsn-consumers?  This obviously can't be the case but I see no
other
> > > way. 
> > > 
> > > Thanks for your help.
> > > 
> > > David Callner
> > > Senior Software Systems Engineer
> > > The MITRE Corporation
> > > Center for Advanced Aviation System Development
> > > 7515 Colshire Dr.
> > > McLean, VA. 22102
> > > [EMAIL PROTECTED]
> > > 703.983.6431 (work)
> > > 
> > > 
> > >
> ---------------------------------------------------------------------
> > > 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]
> 
> 
> ---------------------------------------------------------------------
> 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