Hi,am trying to load data into a GXT data grid...am using JPA for
persistence with DTO for transfer of Objects below is my code my
controller class has the following defination for gettin bid
categories
public BiddingCategory[] FindBiddingCategories(){
EntityManager em = getEntityManager();
try
{
Query q = em.createQuery("SELECT b FROM BiddingCategory
b");
//System.out.println("Return the size" +
q.getResultList().size());
return (BiddingCategory[]) q.getResultList().toArray(new
BiddingCategory[0]);
}
finally
{
em.close();
}
}
then in myservice implementation i call this method as as below.
@Override
public List<BiddingCategoryDTO> getBiddingCategories(){
BiddingCategory[] biddingCategoryList = new
BiddingCategoryJpaController().FindBiddingCategories();
List<BiddingCategoryDTO> biddingCategoryDTOList = new
ArrayList<BiddingCategoryDTO>();
for(BiddingCategory biddingCategory : biddingCategoryList){
biddingCategoryDTOList.add(FromBiddingCategory(biddingCategory));
}
return biddingCategoryDTOList;
}
private BiddingCategoryDTO FromBiddingCategory(BiddingCategory
biddingCategory){
BiddingCategoryDTO biddingCategoryDTO=new
BiddingCategoryDTO();
biddingCategoryDTO.setBidCatId(biddingCategory.getBidCatId());
biddingCategoryDTO.setBidcatname(biddingCategory.getBidcatname());
return biddingCategoryDTO;
}
To load the datagrid,i create an instance of the service
above,override the load function and call the above
getBiddingCategories method as below
final GWTServiceAsync service =
(GWTServiceAsync)GWT.create(GWTService.class);
RpcProxy proxy = new RpcProxy()
{
@Override
public void load(Object loadConfig,AsyncCallback callback){
service.getBiddingCategories(callback);
}
};
BeanModelReader reader = new BeanModelReader();
ListLoader loader = new BaseListLoader(proxy, reader);
//Create a store which can store the loaded data
ListStore<BeanModel> store = new ListStore(loader);
loader.load();
List<ColumnConfig> columns = new ArrayList<ColumnConfig>();
columns.add(new ColumnConfig("bidcatid", "Bidding Cat ID",
200));
columns.add(new ColumnConfig("bidcatname", "Bid Cat Name",
100));
ColumnModel cm = new ColumnModel(columns);
Grid<BeanModel> grid = new Grid<BeanModel>(store, cm);
grid.setAutoExpandColumn("bidcatname");
grid.setWidth(400);
grid.setAutoHeight(true);
grid.setBorders(true);
return grid;
However am getting the exception [Class IllegalStateException] when
loading this datagrid,read up on it and it suggests that "Signals that
a method has been invoked at an illegal or inappropriate time. In
other words, the Java environment or Java application is not in an
appropriate state for the requested operation."
So am wondering how else or when i should call the
getBiddingCategories Method.
THE ERROR
[#|2011-06-09T20:23:53.990+0300|INFO|glassfishv3.0|
javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|
_ThreadID=31;_ThreadName=Thread-1;|[EL Warning]: 2011-06-09
20:23:53.99--UnitOfWork(803022)--java.lang.IllegalStateException:
WEB9031: WebappClassLoader unable to load resource
[sun.reflect.ConstructorAccessorImpl], because it has not yet been
started, or was already stopped
|#]
[#|2011-06-09T20:23:54.022+0300|SEVERE|glassfishv3.0|
javax.enterprise.system.container.web.com.sun.enterprise.web|
_ThreadID=31;_ThreadName=Thread-1;|WebModule[/Bidding]Exception while
dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method
'public abstract java.util.List
com.bidding.client.rpc.GWTService.getBiddingCategories()' threw an
unexpected exception: java.lang.IllegalStateException: WEB9031:
WebappClassLoader unable to load resource
[sun.reflect.ConstructorAccessorImpl], because it has not yet been
started, or was already stopped
at
com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:
385)
at
com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:
588)
at
com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:
208)
at
com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:
248)
at
com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:
62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:
1523)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
279)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
188)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
641)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
at
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:
85)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
185)
at
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:
332)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
233)
at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:
165)
at
com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:
791)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:
693)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
at
com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:
170)
at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:
135)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:
102)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:
88)
at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:
76)
at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:
53)
at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:
57)
at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
at com.sun.grizzly.util.AbstractThreadPool
$Worker.doWork(AbstractThreadPool.java:330)
at com.sun.grizzly.util.AbstractThreadPool
$Worker.run(AbstractThreadPool.java:309)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.IllegalStateException: WEB9031: WebappClassLoader
unable to load resource [sun.reflect.ConstructorAccessorImpl], because
it has not yet been started, or was already stopped
at
org.glassfish.web.loader.WebappClassLoader.loadClass(WebappClassLoader.java:
1357)
at sun.misc.Unsafe.defineClass(Native Method)
at sun.reflect.ClassDefiner.defineClass(ClassDefiner.java:45)
at sun.reflect.MethodAccessorGenerator
$1.run(MethodAccessorGenerator.java:381)
at java.security.AccessController.doPrivileged(Native Method)
at
sun.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:
377)
at
sun.reflect.MethodAccessorGenerator.generateConstructor(MethodAccessorGenerator.java:
76)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
30)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:
27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at
org.eclipse.persistence.internal.descriptors.InstantiationPolicy.buildNewInstanceUsingDefaultConstructor(InstantiationPolicy.java:
132)
at
org.eclipse.persistence.internal.descriptors.InstantiationPolicy.buildNewInstance(InstantiationPolicy.java:
103)
at
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildNewInstance(ObjectBuilder.java:
428)
at
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:
649)
at
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildWorkingCopyCloneNormally(ObjectBuilder.java:
580)
at
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObjectInUnitOfWork(ObjectBuilder.java:
549)
at
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:
489)
at
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:
441)
at
org.eclipse.persistence.queries.ObjectLevelReadQuery.buildObject(ObjectLevelReadQuery.java:
635)
at
org.eclipse.persistence.queries.ReadAllQuery.registerResultInUnitOfWork(ReadAllQuery.java:
838)
at
org.eclipse.persistence.queries.ReadAllQuery.executeObjectLevelReadQuery(ReadAllQuery.java:
464)
at
org.eclipse.persistence.queries.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:
997)
at
org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:
675)
at
org.eclipse.persistence.queries.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:
958)
at
org.eclipse.persistence.queries.ReadAllQuery.execute(ReadAllQuery.java:
432)
at
org.eclipse.persistence.queries.ObjectLevelReadQuery.executeInUnitOfWork(ObjectLevelReadQuery.java:
1021)
at
org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:
2863)
at
org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:
1225)
at
org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:
1207)
at
org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:
1181)
at
org.eclipse.persistence.internal.jpa.EJBQueryImpl.executeReadQuery(EJBQueryImpl.java:
453)
at
org.eclipse.persistence.internal.jpa.EJBQueryImpl.getResultList(EJBQueryImpl.java:
669)
at
com.bidding.controller.BiddingCategoryJpaController.FindBiddingCategories(BiddingCategoryJpaController.java:
214)
at
com.bidding.server.rpc.GWTServiceImpl.getBiddingCategories(GWTServiceImpl.java:
46)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:
569)
Any Suggestions on how i can fix this?
--
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.