On Thu, 2005-08-11 at 12:12 -0400, Tom Jordahl wrote: > From: Glen Daniels [mailto:[EMAIL PROTECTED]: > > Correct. Whatever "simple" db framework we include must be able to: > > > > 1) Do rpc/lit AND rpc/enc > > > > 2) Handle WSDL 1.1 "wrapped" style method calls > > > > 3) Handle SOAP 1.1 and SOAP 1.2 data encoding (arrays, mrefs) > > > > 4) Handle WSDL 2.0 RPC style (once we're handling WSDL 2.0 :)) > > +1 > > This is the kind of list I like to see. :-)
-1 .. :(. All of that stuff is about doing yet-another-RPC-SOAP-thing. I don't agree that we need to *build into the core of Axis2* every possible thing that Axis1 did. If we go with that all the way, then we have no room to create anything new .. all we're doing is reimplementing what we had before. I know there are many people in the world who *still* want to use Web services to SOAP enable RPC stuff. If that's what you want to do then Axis1 does one hell of a job of doing that; please keep using it .. the code works fine and many smart people have put in a lot of effort on it. IMO Axis2 is about future Web service stuff where its much more than about RPC style stuff. That's why to me it is *fundamental* that data binding is not in the core and that data binding has nothing to do with the message exchange pattern. I've converted over time ..I used to be an RPC style bigot too but now I'm totally convinced that the value of Web services will show thru much better when we start adopting XML all the way through. Data binding is contrary to that view; hence my desire to keep it out of the core. While I agree with David Sosnoski that many people do and will continue to start with a piece of code and "Webservicify" it, I disagree that that's what Axis2 should be focused on. We put a lot of effort to create the MEP & context framework which allows one to deal with any kind of MEP. And the reality is that starting with Java code is a flat out lousy way to implement anything except in-out type MEPs - that's all the Java programming model gives you in its guts: a method call. If you want to do other stuff (including a simple in-only or out-only) then Java code is not a great way to start .. you need to start at a "higher" level and then write the code .. or take Java code and annotate it to death. It really comes down to why we are doing Axis2. For some its to try to gain performance improvement out of going to a StAX model etc.. While I agree that is a VERY important requirement, I would put the priority of that requirement below the priority of making it an idea framework for doing all kinds of asynchronous message exchange patterns. So I'm not saying Axis2 cannot be used to write a super-duper-best-of-breed yet-another-RPC-SOAP-thing; what I want to see is that "old" RPC stuff kept out of the core to the maximum possible extent. Yes so I can live with leaving hooks to make that work, of course. I know this will cause a major battle .. but I think we need to discuss what this effort is about long term too .. if for nothing else other than to get everyone on the same page (its certainly possible you'll convince me I skipped a chapter somewhere). Sanjiva.
