Hi,

I have created a minimal working implementation:
- RpcHandler which has a method "String handleRequest(String request)"
and does basically the same as the old servlet's doPost method minus all
the servlet stuff
- IRpcLogger (interface) for log abstraction
- IRpcServiceFactory (interface) that a) finds a service implementation
by name and b) finds all possible method candidates for a service name,
method name and args
- IJavaJsonConverter (interface) that converts between java ans json.
Arguments passed for later extensions: the object to convert, the Class
of this object  defined by the method (return type or param type), the
generic Type of the object if pressent and a list of annotations of the
method or parameter.
- IRpcLogger: NullRpcLogger (logs nothing) and ConsoleRpcLogger (to
StdErr or any Printwriter)
- IRpcServiceFactory: AbstractRpcServiceFactory with an abstract
getServiceImplementation(String serviceName) that exports all the
methods of the service class
- IRpcServiceFactory: AbstractJwsRpcServiceFactory with an abstract
getServiceImplementation(String serviceName) that honors
javax.jws.WebService and javax.jws.WebMethod annotations (early test
implementation)
- IJavaJsonConverter: DefaultJavaJsonConverter with similar behaviour as
the old implementation had (most code from there). It has 2 modes for
converting objects to json: normal (converted proprties are read from
the object) and strict (converted properties are read from the class
that the function defines - Example: MyService.getUser() returns an
interface IUser with methods getId() and getName(). The returned
implementations is an object User with an additional getPassword()
method. With useStrinctInterfaceReturnTypes=true, only id and name are
returned by the service. With useStrinctInterfaceReturnTypes=false also
the password attribute is returned.
- A spring handler as frontend (similar to servlet but much more easy to
configure).

I'd need an svn access to commit ;-)

Regards,
Michael.


------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to