Assuming a setup with Eclipse, I did the following: * Create file /src/jndi.properties: ============================ java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces java.naming.provider.url=<dns.or.ip.of.j2ee.server> ============================
* Create file /war/WEB-INF/jetty-web.xml: ============================ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd"> <Configure class="org.mortbay.jetty.webapp.WebAppContext"> <Set name="systemClasses"> <Array type="java.lang.String"> <Item>java.</Item> <Item>javax.servlet.</Item> <Item>javax.xml.</Item> <Item>org.mortbay.</Item> <Item>org.xml.</Item> <Item>org.w3c.</Item> <Item>org.apache.commons.logging.</Item> <Item>org.apache.log4j.</Item> <Item>org.slf4j.</Item> </Array> </Set> <Set name="serverClasses"> <Array type="java.lang.String"> <Item>org.mortbay.jetty.</Item> <Item>org.mortbay.start.</Item> <Item>org.mortbay.stop.</Item> </Array> </Set> </Configure> ============================ Create a servlet which will forward all requests to a SessionBean on the JBoss Server: ============================ public class RemoteEJBProxyServlet extends RemoteServiceServlet { protected InitialContext ctx; @Override public void init() throws ServletException { super.init(); try { this.ctx = new InitialContext(); } catch (Exception e) { System.err.println(e.getMessage()); throw new ServletException("Could not create InitialContext", e); } } @Override public String processCall(String payload) throws SerializationException { try { // Get the session bean Object bean = ctx.lookup("<The JNDI name of your SessionBean>"); // Decode the request and test if it is legal RPCRequest rpcRequest = RPC.decodeRequest(payload, bean.getClass(), this); // Invoke the requested method on the bean and return the encoded (=RPC serialized) result return invokeAndEncodeResponse(bean, rpcRequest, rpcRequest.getSerializationPolicy()); } catch (NamingException ex) { ex.printStackTrace(); return RPC.encodeResponseForFailure(null, new Exception (ex.getMessage())); } catch (IncompatibleRemoteServiceException ex) { ex.printStackTrace(); return RPC.encodeResponseForFailure(null, ex); } } private String invokeAndEncodeResponse(Object target, RPCRequest rpcRequest, SerializationPolicy serializationPolicy) throws SerializationException { String responsePayload; Method method = rpcRequest.getMethod(); Object[] args = rpcRequest.getParameters(); try { Object result = method.invoke(target, args); responsePayload = RPC.encodeResponseForSuccess(method, result, serializationPolicy); } catch (IllegalAccessException e) { throw new SecurityException(e); } catch (IllegalArgumentException e) { throw new SecurityException(e); } catch (InvocationTargetException e) { Throwable cause = e.getCause(); responsePayload = RPC.encodeResponseForFailure(method, cause, serializationPolicy); } return responsePayload; } } ============================ Also make sure that the J2EE Server libraries are included in the Eclipse Run Configuration of your GWT Development Mode. These are needed by Jetty to connect to the J2EE Server. In the case of JBOSS these are all of the JAR files in "<JBOSS-DIR>/ client" and "<JBOSS-DIR>/common/lib". Greetz, Menno. On 7 jan, 17:31, mariyan nenchev <[email protected]> wrote: > Could you give us small step by step guide how to make gwt 2.0 development > mode working with gwt RPC and JBoss ejb beans? I never got it to work. > On Thu, Jan 7, 2010 at 5:47 PM, Fushion <[email protected]>wrote: > > > > > Well, I started about 2 years ago, just a few hours a month trying out > > various GWT things and gradually upgrading to newer GWT versions (1.3 > > - 1.4 - 1.5 - 1.6 - 1.7 - 2.0). > > > Upgrading was always easy as I found out. The only hard part was > > getting Jetty to communicate with my JBoss application server in > > developmode, but that seems to work just fine now. > > Debugging is a lot easier now that OOPHM is implemented in 2.0. I > > would REALLY encourage people to start using it as it makes developing/ > > debugging in various browser simulatious a no brainer and saves a lot > > of time! I only have to start the development-mode once a day and > > start 4 browsers to connect to it. > > > Most time is spend on CSS styling, as that is still the main problem > > when developing for web browsers today. > > The page is still in quirks mode (transitional html) as I found out > > that it gives me the most consistent UI on all browsers I tested on > > (IE6, IE7, IE8, Firefox, Chrome and Safari). > > One of the future improvements will be to set the page in standards > > mode (html or xhtml), but my first impression on that is that IE7 is > > very buggy in that area, especially when trying to do a centered > > layout. I hope MS will give IE7 a firm kick out of the browser > > world... ;-) > > > The game still uses a lot of pre 2.0 options, but this will be > > upgraded over the next weeks (e.g. *LayoutPanels, more UiBinding and > > ClientResource integration ). > > > The GWT things that you are able to see in the game include: > > - GlassPanels (in various ways) > > - Timers > > - RunAsync > > - Popups > > - History management > > - GWT RPC (no deRPC yet...) > > - Paging tables > > - ImageBundles (still pre 2.0) > > - MenuBar > > > If I had all the tools and ideas I used in the game at the beginning > > of development, I estimate that it would have taken me 2-3 months full > > time to develop it (client AND server code, don't underestimate your > > server coding....) > > > Menno. > > > On 7 jan, 11:28, mariyan nenchev <[email protected]> wrote: > > > Nice. > > > How much time the game took to be designed and developed? > > > > On Thu, Jan 7, 2010 at 3:40 AM, Fushion <[email protected] > > >wrote: > > > > > I started playing around with GWT since version 1.3 just fooling > > > > around with the code and trying out some various things. > > > > One thing I did was starting to develop a browser game, so I could see > > > > how things worked out in a real application instead of just mocking up > > > > some fancy gadgets. > > > > > Well, one thing led to another and now it is starting to look like an > > > > actual application. > > > > You can find it onhttp://lacesfirst.com > > > > > It is an online football manager game where you can manage a football > > > > team. > > > > You can train players, hire employees, change formations and tactics, > > > > sell/buy players, change the lineup of your team, upgrade your stadium/ > > > > shops etc. > > > > The games are simulated every day at specified times and take into > > > > account the tactics and linup of your team (and the opponents' team). > > > > The teams and players are all fictional and randomly generated, as > > > > there is no way I want to get into licencing troubles with the NFL > > > > ofcourse. > > > > > One thing to notice is that the entire game (client and server code) > > > > is made of 100% Java (Using EJB3on server side). > > > > This made it possible to have just one servlet containing about 40 > > > > lines of code that just calls a SessionBean on the EJB server. > > > > Also the code of the data model is used in both client and server > > > > side, so no extra DTO objects were needed. > > > > All this makes the code very slim and manageble. > > > > It is not exactly a UI that you would find in a typical GWT > > > > application though... > > > > > The game is still in beta as there are many things that can be made > > > > better, but it is playable anyway. > > > > Have fun! > > > > > Greetz, > > > > > Menno. > > > > > -- > > > > You received this message because you are subscribed to the Google > > Groups > > > > "Google Web Toolkit" group. > > > > To post to this group, send email to > > [email protected]. > > > > To unsubscribe from this group, send email to > > > > [email protected]<google-web-toolkit%2Bunsubs > > > > [email protected]><google-web-toolkit%2Bunsubs > > [email protected]> > > > > . > > > > For more options, visit this group at > > > >http://groups.google.com/group/google-web-toolkit?hl=en. > > > -- > > You received this message because you are subscribed to the Google Groups > > "Google Web Toolkit" group. > > To post to this group, send email to [email protected]. > > To unsubscribe from this group, send email to > > [email protected]<google-web-toolkit%2Bunsubs > > [email protected]> > > . > > For more options, visit this group at > >http://groups.google.com/group/google-web-toolkit?hl=en.
-- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
