Hi,

For point 2 and 3, it is a known bug of Gilead 1.2.1 : it has been
fixed in project SVN (branch 1.2) and will be part of the next release
(probably this month.

About the CascadeType issue, what suprise me is that it happens even
when no annoted pojo is sent : see 
http://sourceforge.net/forum/forum.php?thread_id=3000451&forum_id=868076
for details

Regards
Bruno

On 5 mar, 07:07, grishag <grigori.gold...@gmail.com> wrote:
> I tried a few things today but beside more problems, no solution yet.
>
> 1. Created a few POJOs and added a bunch of JPA annotations to them
> (including the javax.persistence.CascadeType). In my RPC service
> class, I manually instantiate a POJO and return it. This works fine.
> The GWT compiler/shell is not complaining about any annotations. I'm
> still using Gilead and GWT-SL with the -noserver option.
>
> 2. For my second attempt, I configured the above POJOs in my Spring
> AnnotationSessionFactoryBean, e.g
>
> <bean id="sessionFactory"
> class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
>                 <property name="dataSource"><ref 
> bean="dataSource"/></property>
>                 ...
>                 <property name="annotatedClasses">
>                     <list>
>                          ...
>
> <value>au.gov.vic.dpi.mpd.geodatavic2.module.domain.client.model.security.User</
> value>
>                     </list>
>                   </property>
> </bean>
>
> Note, I still just manually create the User class in the RPC service
> class, I'm not actually retrieving anything from database via
> Hibernate but it didn't work. I got the following exception (on the
> server):
>
> SEVERE: Exception while dispatching incoming RPC call
> java.lang.RuntimeException: java.lang.NullPointerException
>         at
> org.gwtwidgets.server.spring.GWTRPCServiceExporter.handleExporterProcessingException
> (GWTRPCServiceExporter.java:344)
>         at org.gwtwidgets.server.spring.GWTRPCServiceExporter.processCall
> (GWTRPCServiceExporter.java:313)
>         at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost
> (RemoteServiceServlet.java:86)
>         at org.gwtwidgets.server.spring.GWTRPCServiceExporter.handleRequest
> (GWTRPCServiceExporter.java:363)
>         at
> org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle
> (HttpRequestHandlerAdapter.java:49)
>         at org.springframework.web.servlet.DispatcherServlet.doDispatch
> (DispatcherServlet.java:875)
>         at org.springframework.web.servlet.DispatcherServlet.doService
> (DispatcherServlet.java:809)
>         at org.springframework.web.servlet.FrameworkServlet.processRequest
> (FrameworkServlet.java:476)
>         at org.springframework.web.servlet.FrameworkServlet.doPost
> (FrameworkServlet.java:441)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> (ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter
> (ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke
> (StandardWrapperValve.java:233)
>         at org.apache.catalina.core.StandardContextValve.invoke
> (StandardContextValve.java:191)
>         at org.apache.catalina.core.StandardHostValve.invoke
> (StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke
> (ErrorReportValve.java:102)
>         at org.apache.catalina.core.StandardEngineValve.invoke
> (StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service
> (CoyoteAdapter.java:286)
>         at org.apache.coyote.http11.Http11Processor.process
> (Http11Processor.java:845)
>         at org.apache.coyote.http11.Http11Protocol
> $Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:
> 447)
>         at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.NullPointerException
>         at net.sf.gilead.core.hibernate.HibernateUtil.isUnsavedValue
> (HibernateUtil.java:1328)
>         at net.sf.gilead.core.hibernate.HibernateUtil.getId
> (HibernateUtil.java:290)
>         at net.sf.gilead.core.hibernate.HibernateUtil.getId
> (HibernateUtil.java:200)
>         at net.sf.gilead.core.hibernate.HibernateUtil.isPersistentPojo
> (HibernateUtil.java:314)
>         at net.sf.gilead.core.PersistentBeanManager.clonePojo
> (PersistentBeanManager.java:325)
>         at net.sf.gilead.core.PersistentBeanManager.clone
> (PersistentBeanManager.java:241)
>         at net.sf.gilead.gwt.GileadRPCHelper.parseReturnValue
> (GileadRPCHelper.java:129)
>         at
> org.gwtwidgets.server.spring.hb4gwt.HB4GWTRPCServiceExporter.invokeMethodOnService
> (HB4GWTRPCServiceExporter.java:63)
>         at org.gwtwidgets.server.spring.GWTRPCServiceExporter.processCall
> (GWTRPCServiceExporter.java:298)
>         ... 21 more
>
> I'm still scratching my head about this one...
>
> 3. I did try to retrieve POJOs from the database instead of manually
> creating them but I got the same result.
>
> The POJOs are quite simple. Here's an example. Why this doesn't work
> is a mistery to me.
>
> @Entity
> @Table(name = "USERS", schema = "SECURITY")
> public class Users extends LightEntity implements java.io.Serializable
> {
>
>         private String userId;
>         private Date endDate;
>         private Set<ApplicationRoles> applicationRoleses = new
> HashSet<ApplicationRoles>(0);
>
>         public Users() {
>         }
>
>         @Id
>         @Column(name = "USER_ID", unique = true, nullable = false, length =
> 25)
>         public String getUserId() {
>                 return this.userId;
>         }
>
>         public void setUserId(String userId) {
>                 this.userId = userId;
>         }
>
>         @Temporal(TemporalType.DATE)
>         @Column(name = "END_DATE", length = 7)
>         public Date getEndDate() {
>                 return this.endDate;
>         }
>
>         public void setEndDate(Date endDate) {
>                 this.endDate = endDate;
>         }
>
>         @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY,
> mappedBy = "users")
>         public Set<ApplicationRoles> getApplicationRoleses() {
>                 return this.applicationRoleses;
>         }
>
>         public void setApplicationRoleses(Set<ApplicationRoles>
> applicationRoleses) {
>                 this.applicationRoleses = applicationRoleses;
>         }
>
> }
>
> On Mar 5, 1:56 pm, sutarsa giri <sutarsa.g...@gmail.com> wrote:
>
> > Hi,
> > you may need to take a look at -noserver option when running your gwt shell.
> > with this, you could use your favorite servlet container as server for your
> > gwt shell.
>
> > regards,
> > Gede sutarsa
>
> > 2009/3/3 grishag <grigori.gold...@gmail.com>
>
> > > Hi,
>
> > > I have a problem running GWT in hosted mode using JPA annotated domain
> > > classes. I can compile my project to JavaScript, package it up in a
> > > war and run it on a server no problem but I can't do the same in
> > > hosted mode. Really annoying, without hosted mode development is
> > > really slow.
>
> > > Here is what I have done:
>
> > > 1. I have one module that defines my domain classes (sitting under the
> > > GWT client package) and DAO classes (under GWT server pacakge). The
> > > following is the gwt.xml file for this module:
>
> > > <module>
> > >        <inherits name='net.sf.gilead.Adapter4Gwt15'/>
> > >        <inherits name='net.sf.gilead.emul.java5.ejb3.Ejb3'/>
> > > </module>
>
> > > 2. The second module implements the client UI and the RPC service that
> > > uses the domain objects from the first module:
>
> > > <module>
> > >        <inherits name="com.google.gwt.user.User"/>
> > >        <inherits name="com.extjs.gxt.ui.GXT"/>
> > >        <inherits name="com.extjs.gxt.themes.Themes" />
>
> > >        <inherits
> > > name='au.gov.vic.dpi.mpd.geodatavic2.module.domain.DomainModel' />
>
> > >        <stylesheet src="css/ext-all.css" />
>
> > >        <entry-point
>
> > > class='au.gov.vic.dpi.mpd.geodatavic2.module.legends.client.StratigraphicLegends'/
>
> > > </module>
>
> > > Like I said I can compile this using GWTCompiler and run it all on a
> > > standalone server but not in hosted mode (I'm using the noserver
> > > option).
>
> > > I've been through my classpath multiple times and everything looks
> > > fine but I'm still getting this error no matter what I do. If anyone
> > > has any idea why this is happening and most importantly how to fix
> > > this it would be greatly appreciated. I've been battling with this
> > > thing for a day and a half and I'm out of ideas.
>
> > > Thank you.
>
> > > Buildfile: U:\projects\GeoDataVic2alt\build.xml
> > > gwt.run:
> > >     [java] java.lang.NoClassDefFoundError: javax/persistence/
> > > CascadeType
> > >     [java]     at java.lang.Class.getDeclaredMethods0(Native Method)
> > >     [java]     at java.lang.Class.privateGetDeclaredMethods(Unknown
> > > Source)
> > >     [java]     at java.lang.Class.getDeclaredMethods(Unknown Source)
> > >     [java]     at
>
> > > com.google.gwt.dev.shell.DispatchClassInfo.lazyInitTargetMembersUsingReflectionHelper
> > > (DispatchClassInfo.java:184)
> > >     [java]     at
> > > com.google.gwt.dev.shell.DispatchClassInfo.lazyInitTargetMembers
> > > (DispatchClassInfo.java:146)
> > >     [java]     at com.google.gwt.dev.shell.DispatchClassInfo.getMemberId
> > > (DispatchClassInfo.java:55)
> > >     [java]     at com.google.gwt.dev.shell.CompilingClassLoader
> > > $DispatchClassInfoOracle.getDispId(CompilingClassLoader.java:130)
> > >     [java]     at com.google.gwt.dev.shell.CompilingClassLoader.getDispId
> > > (CompilingClassLoader.java:531)
> > >     [java]     at
> > > com.google.gwt.dev.shell.ie.IDispatchProxy.getIDsOfNames
> > > (IDispatchProxy.java:124)
> > >     [java]     at com.google.gwt.dev.shell.ie.IDispatchImpl.GetIDsOfNames
> > > (IDispatchImpl.java:273)
> > >     [java]     at com.google.gwt.dev.shell.ie.IDispatchImpl.method5
> > > (IDispatchImpl.java:189)
> > >     [java]     at org.eclipse.swt.internal.ole.win32.COMObject.callback5
> > > (COMObject.java:108)
> > >     [java]     at org.eclipse.swt.internal.ole.win32.COM.VtblCall(Native
> > > Method)
> > >     [java]     at org.eclipse.swt.internal.ole.win32.IDispatch.Invoke
> > > (IDispatch.java:64)
> > >     [java]     at org.eclipse.swt.ole.win32.OleAutomation.invoke
> > > (OleAutomation.java:493)
> > >     [java]     at org.eclipse.swt.ole.win32.OleAutomation.invoke
> > > (OleAutomation.java:417)
> > >     [java]     at
> > > com.google.gwt.dev.shell.ie.ModuleSpaceIE6.doInvokeOnWindow
> > > (ModuleSpaceIE6.java:67)
> > >     [java]     at com.google.gwt.dev.shell.ie.ModuleSpaceIE6.doInvoke
> > > (ModuleSpaceIE6.java:152)
> > >     [java]     at
>
> ...
>
> plus de détails »
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to Google-Web-Toolkit@googlegroups.com
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to