I'd like to keep the module/jar names the same for consistencies sake, with the symbolic names being as they are now. I have this change in the muse-osgi-* modules, but not the ones already in /trunk.
Dan "Hawkins, Joel" <[EMAIL PROTECTED]> wrote on 07/27/2006 01:54:29 PM: > Thanks. On to my next stumbling block ;-) > > On a different topic, did we agree on using the module names as the > jar/bundle names for OSGi? I'm in the process of splitting out the APIs, > so I figured I'd go ahead an make all the necessary changes to the > manifest, etc. at once. > > Joel > > -----Original Message----- > From: Daniel Jemiolo [mailto:[EMAIL PROTECTED] > Sent: Thursday, July 27, 2006 1:38 PM > To: [email protected] > Subject: RE: Possible Missing Operations on SubscriptionManager? > > I haven't been keeping the WSRF WSDLs in SVN - just the schemas - > because > we don't normally need to include them in the WSDLs generated for user > projects. But you're right - they are used by the subscription > resource's > WSDL. I've added them to muse-wsrf-api/specs in SVN. > > Dan > > > > "Hawkins, Joel" <[EMAIL PROTECTED]> wrote on 07/27/2006 > 01:11:21 > PM: > > > WS-ResourceLifetime-1_2.wsdl? Any idea where I find this? It's > included > > by the BaseNotification. I expected it to be in muse-wsrf-api, but I > > don't see it. > > > > Joel > > > > > > -----Original Message----- > > From: Daniel Jemiolo [mailto:[EMAIL PROTECTED] > > Sent: Thursday, July 27, 2006 10:58 AM > > To: [email protected] > > Subject: RE: Possible Missing Operations on SubscriptionManager? > > > > yes, I'm using the slightly-modified WS-N WSDL in the > muse-wsn-api/specs > > > > directory. > > > > Dan > > > > > > "Hawkins, Joel" <[EMAIL PROTECTED]> wrote on 07/26/2006 > > 04:41:02 > > PM: > > > > > Thanks, yeah - this is about where I've gotten to (after bumping > into > > > every sharp corner in the room!). I figured out that the > subscription > > > manager is on the WSResource representing the subscription (which > > makes > > > your lifetime equivalency argument a lot clearer), and that you > can't > > > make one of these at startup time (only the notification producer > will > > > know how to initialize it properly). I'm dubious about your wsdl > port > > > type, but I'll give it a go - when I tried that I got the "not all > > > operations were implemented" error. I'm assuming your wsdl matches > > > what's in wsn-api's spec folder? > > > > > > I've just hit a problem with Axiom trying to serialize > > > getResourcePropertyDocument (still investigating), but I think I'll > > > finally muddle through all this. > > > > > > Thanks for the help, > > > Joel > > > > > > -----Original Message----- > > > From: Daniel Jemiolo [mailto:[EMAIL PROTECTED] > > > Sent: Wednesday, July 26, 2006 4:09 PM > > > To: [email protected] > > > Subject: RE: Possible Missing Operations on SubscriptionManager? > > > > > > sorry about the XML getting chopped up by the character limit - > > > hopefully > > > re-formatting in your editor can put it back in order. > > > > > > Dan > > > > > > > > > Daniel Jemiolo/Durham/[EMAIL PROTECTED] wrote on 07/26/2006 04:06:05 PM: > > > > > > > You need two things to deploy a WSN producer - > > > > > > > > 1. a resource that has the NotificationProducer capability. this > is > > > the > > > > resource that is actually creating events and publishing them. > > > > > > > > 2. a section resource type that represents subscriptions. this > type > > > can > > > be > > > > very simple - just has to implement WSRP Get, WSN > > SubscriptionManager, > > > > > > > and, optionally, WSRL capabilities for lifecycle operations. The > > > muse.xml > > > > fragment for subscription resources should look like this (even > has > > > WSRL > > > > > > > :) ): > > > > > > > > > > > > <resource-type> > > > > <context-path>subscription-manager</context-path> > > > > <wsdl> > > > > > > <wsdl-file>wsdl/WS-BaseNotification-1_3.wsdl</ > > > > wsdl-file> > > > > > <wsdl-port-type>wsntw:SubscriptionManager</ > > > > wsdl-port-type> > > > > </wsdl> > > > > <java-id-factory-class> > > > > org.apache.muse.core.routing.CounterResourceIdFactory</ > > > > java-id-factory-class> > > > > <java-resource-class> > > > > > > > > > > org.apache.muse.ws.resource.impl.SimpleWsResource</java-resource-class> > > > > <capability> > > > > <capability-uri> > > > > > http://docs.oasis-open.org/wsrf/rlw-2/ImmediateResourceTermination</ > > > > capability-uri> > > > > <java-capability-class> > > > > > > org.apache.muse.ws.resource.lifetime.impl.SimpleImmediateTermination</ > > > > java-capability-class> > > > > </capability> > > > > <capability> > > > > <capability-uri> > > > > > http://docs.oasis-open.org/wsrf/rlw-2/ScheduledResourceTermination</ > > > > capability-uri> > > > > <java-capability-class> > > > > > > org.apache.muse.ws.resource.lifetime.impl.SimpleScheduledTermination</ > > > > java-capability-class> > > > > </capability> > > > > <capability> > > > > <capability-uri> > > > > http://docs.oasis-open.org/wsrf/rpw-2/Get</capability-uri> > > > > <java-capability-class> > > > > > > org.apache.muse.ws.resource.properties.get.impl.SimpleGetCapability</ > > > > java-capability-class> > > > > </capability> > > > > <capability> > > > > <capability-uri> > > > > > > > > > > http://docs.oasis-open.org/wsn/bw-2/SubscriptionManager</capability-uri> > > > > <java-capability-class> > > > > org.apache.muse.ws.notification.impl.SimpleSubscriptionManager</ > > > > java-capability-class> > > > > <init-param> > > > > <param-name>trace-notifications</ > > > > param-name> > > > > <param-value>true</param-value> > > > > </init-param> > > > > </capability> > > > > </resource-type> > > > > > > > > > > > > > > > > At startup, the resource that has NotificationProducer will look > for > > > > > > another resource type that is a subscription type. This will > ensure > > > that > > > > > > > it can implement the WSN pub/sub system as intended. It will > create > > > > instances of the subscription type for every call you make to > > > subscribe(). > > > > If you use the NotificationProducerClient to call subscribe(), > > you'll > > > get > > > > back an EPR that can be used to talk to the subscription > ws-resource > > > (to > > > > > > > call destroy(), for example). > > > > > > > > > > > > Don't create any instances of subscriptions on your own. The > > > > NotificationProducer impl will do that. Just handle the creation > of > > > your > > > > > > > own resources, and subscriptions will handle themselves. From > within > > > > > your > > > > producer resource code, you can publish messages using the code > > below. > > > > > > > Remember that WSRP change notifications and WSRL termination > > > notifications > > > > are handled automatically. > > > > > > > > > > > > QName topic = ... // can be null > > > > > > > > Element payload = ... > > > > // also works: XmlSerializable payload = ... > > > > > > > > NotificationProducer wsn = > > > > getResource().getCapability(WsnConstants.PRODUCER_URI); > > > > wsn.publish(topic, payload); > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > "Hawkins, Joel" <[EMAIL PROTECTED]> wrote on 07/26/2006 > > > 01:31:59 > > > > PM: > > > > > > > > > That's what I've done (haven't been sitting around waiting ;-) ) > > > > > > > > > > So now my resource has the SubscriptionManager capability (which > > > seems > > > > > wrong, but OK). Now I'm getting some issues with initialization > of > > > the > > > > > SimpleSubscriptionManager - [ID = 'NoProducerEPR'] The > > Subscription > > > has > > > > > no ProducerReference - you must set the producer with > > > > > setProducerReference() before initialization. > > > > > > > > > > I'm creating the resource during startup (using the muse.xml > > > > > startupcount attribute). > > > > > > > > > > So, to review the bidding - > > > > > > > > > > I started with a simple resource with the following > capabilities: > > > > > > > > > > GetMetaData, > > > > > MetaDataCapability > > > > > ImmediateResourceTermination > > > > > ScheduledResourceTermination > > > > > Property Get/Query/Set > > > > > > > > > > All was well. I then added: > > > > > NotificationProducer > > > > > Advertisement > > > > > > > > > > Which required feeding a number of additional properties to the > > > schema. > > > > > SimpleNotificationProducer complained about not having a > > > > > SubscriptionManager. > > > > > > > > > > Feeding the resource a subscriptionmanager capability is where > we > > > came > > > > > in. > > > > > > > > > > > > > > > Now, I assume that what I really need is to create another > > resource > > > type > > > > > with the subscriptionmanager capability, make it a startup > > instance > > > of > > > > > 1, and put it before my problem child resource in muse.xml, > right? > > > > > Now, > > > > > what wsdl should I use? Yesterday I pointed at the WSN wsdl and > > used > > > > > > the > > > > > subscriptionmanager port, and that's what started all of this > > > (missing > > > > > methods and stuff). Where am I going off into the weeds? > > > > > > > > > > Thanks and sorry for the distraction, > > > > > Joel > > > > > > > > > > > > > > > > > > > > -----Original Message----- > > > > > From: Daniel Jemiolo [mailto:[EMAIL PROTECTED] > > > > > Sent: Wednesday, July 26, 2006 12:41 PM > > > > > To: [email protected] > > > > > Subject: RE: Possible Missing Operations on SubscriptionManager? > > > > > > > > > > You want to keep SubscriptionManager, but add > > > > > ImmediateResourceTermination > > > > > and/or ScheduledResourceTermination: > > > > > > > > > > <capability> > > > > > <capability-uri> > > > > > > > http://docs.oasis-open.org/wsrf/rlw-2/ImmediateResourceTermination</ > > > > > capability-uri> > > > > > <java-capability-class> > > > > > > > > > org.apache.muse.ws.resource.lifetime.impl.SimpleImmediateTermination</ > > > > > java-capability-class> > > > > > </capability> > > > > > <capability> > > > > > <capability-uri> > > > > > > > http://docs.oasis-open.org/wsrf/rlw-2/ScheduledResourceTermination</ > > > > > capability-uri> > > > > > <java-capability-class> > > > > > > > > > org.apache.muse.ws.resource.lifetime.impl.SimpleScheduledTermination</ > > > > > java-capability-class> > > > > > </capability> > > > > > > > > > > > > > > > The IBM stuff is part of MUSE-33 cleanup... > > > > > > > > > > > > > > > > > > > > "Hawkins, Joel" <[EMAIL PROTECTED]> wrote on 07/26/2006 > > > > > 12:33:30 > > > > > PM: > > > > > > > > > > > Dan wrote > > > > > > > > > > > > > I didn't implement Unsubscribe and Renew because a) time is > > > short, > > > > > and > > > > > > > b) > > > > > > > they are redundant. I believe that the reason these two > > > operations > > > > > > exist > > > > > > > > > > > > > > is to allow people to implement subscription resources > without > > a > > > > > > > dependency on WSRF. Subscriptions that are WSRF-based use > > > Destroy > > > > > for > > > > > > > Unsubscribe and SetTerminationTime for Renew - the concepts > > are > > > > > > exactly > > > > > > > the same, but in each case, the former is based on WSRL. > With > > > Muse, > > > > > > all > > > > > > > resources implement the implied resource pattern, so most of > > the > > > > > WS-* > > > > > > > foundation that one would be looking to avoid when ditching > > WSRF > > > > > > is > > > > > > > already present; that being the case, I would advise someone > > to > > > just > > > > > > add > > > > > > > > > > > > > > in the WSRL capabilities if either of these operations are > > > desired. > > > > > > > You're already pulling in WSRF for the NotificationProducer > > > impl, > > > so > > > > > > > > > > > > you might as > > > > > > > well take advantage of that and use WSRL in the subscription > > > > > resource > > > > > > > rather than adding duplicate code to the app. > > > > > > > > > > > > > > > > > > > Well, when I remove SubscriptionManager from the mix, I get > the > > > > > > following out of SimpleNotificationProducer's initialize > method: > > > > > > > > > > > > [ID = 'NoSubscriptionManager'] There is no resource that > > > implements > > > > > the > > > > > > WS-N SubscriptionManager portType defined in touchpoint.xml. > In > > > order > > > > > to > > > > > > use and manage subscriptions, a touchpoint must expose a > > resource > > > of > > > > > > type com.ibm.ws.notification.Subscription (or a sub-type); > this > > > > > resource > > > > > > will represent all new subscriptions created by the resource. > > > > > > > > > > > > I'm at a bit of a loss - any ideas? The com.ibm bit makes me a > > bit > > > > > > squeamish... am I still skiing out of bounds here? > > > > > > > > > > > > Thanks, > > > > > > Joel > > > > > > > > > > > > > > > > > > The contents of this e-mail are intended for the named > addressee > > > > > only. > > > > > > > > > > It > > > > > > contains information that may be confidential. Unless you are > > the > > > > > named > > > > > > addressee or an authorized designee, you may not copy or use > it, > > > or > > > > > disclose > > > > > > it to anyone else. If you received it in error please notify > us > > > > > immediately > > > > > > and then destroy it. > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > > 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] > > > > > > > > > > The contents of this e-mail are intended for the named addressee > > > only. > > > > > > > It > > > > > contains information that may be confidential. Unless you are > the > > > named > > > > > addressee or an authorized designee, you may not copy or use it, > > or > > > > disclose > > > > > it to anyone else. If you received it in error please notify us > > > > immediately > > > > > and then destroy it. > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > 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] > > > > > > The contents of this e-mail are intended for the named addressee > only. > > > > It > > > contains information that may be confidential. Unless you are the > > named > > > addressee or an authorized designee, you may not copy or use it, or > > disclose > > > it to anyone else. If you received it in error please notify us > > immediately > > > and then destroy it. > > > > > > > --------------------------------------------------------------------- > > > 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] > > > > The contents of this e-mail are intended for the named addressee only. > > It > > contains information that may be confidential. Unless you are the > named > > addressee or an authorized designee, you may not copy or use it, or > disclose > > it to anyone else. If you received it in error please notify us > immediately > > and then destroy it. > > > > --------------------------------------------------------------------- > > 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] > > The contents of this e-mail are intended for the named addressee only. It > contains information that may be confidential. Unless you are the named > addressee or an authorized designee, you may not copy or use it, or disclose > it to anyone else. If you received it in error please notify us immediately > and then destroy it. > > --------------------------------------------------------------------- > 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]
