You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ws.apache.org by Apache Wiki <wi...@apache.org> on 2005/03/31 06:26:56 UTC

[Ws Wiki] Update of "Frontpage/Axis2/f2f 2/Scribe31" by DeepalJayasinghe

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Ws Wiki" for change notification.

The following page has been changed by DeepalJayasinghe:
http://wiki.apache.org/ws/Frontpage/Axis2/f2f_2/Scribe31

New page:
{{{

<Deepal> Hi GM/GE
[09:08]<Srinath> we are talking about the WSDL, modules and client invocations
[09:08]<Srinath> we are talking about the policy and the there role in deciding the handler chain
[09:10]<Srinath> now we shift to server side 
[09:10]<Deepal> server side in run time
[09:10]<Deepal> how module is going to be added at the run time
[09:10]<Srinath> at the sever side not much can be done untill the service is found
[09:10]<Deepal> depending on the police
[09:16]<{eng}bar4ka> :D
[09:32]  *** {eng}bar4ka quit FreeNode : "Chatzilla 0.9.67 [Firefox 1.0.2/20050317]"
[09:42]<Chinthaka> now discussing how to set properties
[09:42]<Chinthaka> for cutom config we inputs in Code Gen
[09:47]  *** Thilina joined #apache-axis
[09:49]  *** sanjiva joined #apache-axis
[09:52]  *** Chinthaka quit FreeNode : "Chatzilla 0.9.66 [Mozilla rv:1.7.5/20041107]"
[09:53]  *** Chinthaka joined #apache-axis
[09:58]<sanjiva> Potential architecture for client side stubs and interaction with modules:
[10:01]<sanjiva> - if there are policies in the WSDL, the stub generator will generate a "getModuleController()" method
[10:01]<sanjiva> - the returned ModuleController can be cast to (for example) RMModuleController
[10:02]<sanjiva> - speciifc module controllers can have methods to allow stubs to control the behavior of the module
[10:02]<sanjiva> - for example RMModuleController.createSequenceNowBecauseIWantItDoneNow()
[10:02]<GlenD> -1 getModuleController() - it should be getController(String name) or getRMController()/getSecureConversationController()/etc
[10:02]  *** alek_away is now known as alek_s
[10:02]<alek_s> hi
[10:03]<GlenD> s/createSequenceNowBecauseIWantItDoneNow()/createSequence()/ :)
[10:03]<sanjiva> - we need to make sure modules work without this being done - i.e., the simple case remains as simple as the policy being in the WSDL file and "everything just works"
[10:03]<GlenD> hi Alek
[10:03]<alek_s> was possibility of not generating *almost* any code but an interface and maybe use some annotations ala JSR181 considered?
[10:03]<sanjiva> hi Alek
[10:03]<alek_s> just generate Java interface (with annotation) and use java Proxy to have dynamic stubs
[10:04]<alek_s> and java refection to provide dynamc skeletons with whatever level of dynamic adaptation required
[10:04]<alek_s> self configured modules, flexible chains of handlers, you name it ...
[10:04]<alek_s> ;-)
[10:04]<alek_s> hi Glen
[10:04]<alek_s> hi Sanjiva
[10:04]<Chinthaka> hi 
[10:04]<Srinath> :)
[10:04]<Deepal> hi Alek
[10:04]<Chinthaka> shall we run a for loop :D
[10:05]<Thilina> hi alek
[10:05]  *** Jaliya joined #apache-axis
[10:05]<GlenD> for (String name = ChanServ to Thilina) { say "hi, $name" }
[10:05]  *** dasarath joined #apache-axis
[10:05]<Jaliya> Hi Alek
[10:05]  *** foxsden joined #apache-axis
[10:05]<dasarath> Hi Alek
[10:05]<Deepal> :D
[10:06]  *** dims joined #apache-axis
[10:07]<alek_s> hi Everybody!
[10:07]<dims> hi Alek :)
[10:09]<foxsden> 'Hi to Indiana from Geoffrey
[10:09]<alek_s> hi to the other side of planet ;-)
[10:10]<alek_s> i would add "the sunny side"
[10:11]<sanjiva> Hi Alek: We didn't discuss details of what the stubs look like - dynamic proxies is a possible way too
[10:12]<alek_s> i have experimented with dynamic stubs that uses Java Proxy and are im[lemented on top of WSIF so are WSDL driven
[10:12]<alek_s> WSDL portType is used to generate Java interface and that is it
[10:12]<alek_s> everything else is done in runtime and derived from Java interface (to keep static typing) and from WSDL 
[10:13]<alek_s> from WSDL i can read features/properties to auto-configure handlers (and use policies as well)
[10:13]  *** sanjiva_ joined #apache-axis
[10:14]<alek_s> i have a working prototype with XML-security in XSUL2 where chainedhandlers can autoconfigure themselves depending of features in WSDL and dyanmic stub encapsulates handler chain
[10:15]<alek_s> so in this case there is no code generation but for Java interface derived from WSDL:portType (and interface in WSDL2 in distant future ...)
[10:15]<alek_s> the only downside is possibly harder to debug (but generated code is not easy to read anyway) and some slowdown (minor when compared ot network latencies)
[10:16]<Deepal> today chat log upto this point is located at 
[10:16]<Deepal> http://wiki.apache.org/ws/Frontpage/Axis2/f2f_2/day3
[10:18]  *** Jaya joined #apache-axis
[10:18]<GlenD> -- We should generate both "float getStockQuote(String)" and "CallbackHandle getStockQuote(String, Callback)"
[10:19]<GlenD> -- If the callback argument is null, then the engine treats it as a one-way
[10:19]<GlenD> -- (i.e. doesn't hold resources for reply, etc)
[10:21]<Chinthaka> Deepal : http://wiki.apache.org/ws/Frontpage/Axis2/f2f_2/Scribe31 is reserved for today's chat log
[10:22]<alek_s> if you have an operaiton that is one way then with java annotaiotn (JSR 175 that is now backported to JDK 1.3/1.4) it can be very nicely described
[10:22]<Chinthaka> put it there please
[10:22]<alek_s> here is simple example
[10:22]<Deepal> Chinthaka  :oh ok I will do that 
[10:23]<GlenD> -- Jaliya asks about how we deal with robust MEPs in the async case... 
[10:23]<GlenD> -- We decided that since there's no one right answer that there should be a default behavior and a configuration option.
[10:23]  *** sanjiva quit FreeNode : Read error: 60 (Operation timed out)
[10:24]<GlenD> -- Example - if the default is "return immediately for async calls and do EVERYTHING on another thread", then you cannot get a fault back except via a Callback object (if you don't pass one you don't get faults)
[10:24]<GlenD> -- If the default is "robust" then the engine can wait until it sees either a "202 OK" or a fault on the HTTP connection before it returns.
[10:25]<alek_s> example for one way without fault:   /** @OneWay */ public void someMethod(SomeParam)
[10:25]<GlenD> I think the default should be "return immediately"


}}}