Shiro.There is no session with id - session

I am using shiro-1.2.3 for GWT webapp. I am able to configure the login process of the user; however, I need some help with the shiro's log out process. The webapp is deployed through tomcat and it creates new instance for different users. So, for instance, when two users are logged in, there are two session id created by shiro; however, when I click on the sign out button, it will call subject.logout() function to logout the user, it looks like that Shiro is keeping track of only one session ( the last user logged in), for some reason. It will logout successfully if there was only one user logged in; however, when logging out more than one, this is what I am getting:
Caused by: org.apache.shiro.session.UnknownSessionException: There is no session with id [f5b7c3bf-2c53-40e9-a707-37f4265970aa]
at org.apache.shiro.session.mgt.eis.AbstractSessionDAO.readSession(AbstractSessionDAO.java:170)
at org.apache.shiro.session.mgt.DefaultSessionManager.retrieveSessionFromDataSource(DefaultSessionManager.java:236)
at org.apache.shiro.session.mgt.DefaultSessionManager.retrieveSession(DefaultSessionManager.java:222)
at org.apache.shiro.session.mgt.AbstractValidatingSessionManager.doGetSession(AbstractValidatingSessionManager.java:118)
at org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupSession(AbstractNativeSessionManager.java:105)
at org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupRequiredSession(AbstractNativeSessionManager.java:109)
at org.apache.shiro.session.mgt.AbstractNativeSessionManager.getAttribute(AbstractNativeSessionManager.java:206)
at org.apache.shiro.session.mgt.DelegatingSession.getAttribute(DelegatingSession.java:141)
at org.apache.shiro.session.ProxiedSession.getAttribute(ProxiedSession.java:121)
at org.apache.shiro.session.ProxiedSession.getAttribute(ProxiedSession.java:121)
at org.apache.shiro.session.ProxiedSession.getAttribute(ProxiedSession.java:121)
at com.factorlab.security.FactorlabDelegatingSubject.getUser(FactorlabDelegatingSubject.java:34)
at com.factorlab.security.FactorlabDelegatingSubject.getUser(FactorlabDelegatingSubject.java:10)
at com.factorlab.persistence.AbstractEntityDao.getCurrentUser(AbstractEntityDao.java:227)
at com.factorlab.persistence.AbstractEntityDao.fireEvent(AbstractEntityDao.java:215)
at com.factorlab.persistence.AbstractEntityDao.saveOrUpdate(AbstractEntityDao.java:190)
at com.factorlab.persistence.AbstractEntityDao.saveOrUpdate(AbstractEntityDao.java:177)
at com.factorlab.persistence.AbstractEntityDao.saveOrUpdate(AbstractEntityDao.java:38)
at sun.reflect.GeneratedMethodAccessor106.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:196)
at $Proxy72.saveOrUpdate(Unknown Source)
at com.factorlab.observations.sales.OpportunityScoreUpdateServiceImpl.receiveOpportunityEvent(OpportunityScoreUpdateServiceImpl.java:83)
at sun.reflect.GeneratedMethodAccessor103.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy76.receiveOpportunityEvent(Unknown Source)
at sun.reflect.GeneratedMethodAccessor102.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.springframework.expression.spel.support.ReflectiveMethodExecutor.execute(ReflectiveMethodExecutor.java:69)
at org.springframework.expression.spel.ast.MethodReference.getValueInternal(MethodReference.java:84)
at org.springframework.expression.spel.ast.CompoundExpression.getValueInternal(CompoundExpression.java:57)
at org.springframework.expression.spel.ast.SpelNodeImpl.getTypedValue(SpelNodeImpl.java:102)
at org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:102)
at org.springframework.integration.util.AbstractExpressionEvaluator.evaluateExpression(AbstractExpressionEvaluator.java:126)
at org.springframework.integration.util.MessagingMethodInvokerHelper.processInternal(MessagingMethodInvokerHelper.java:227)
at org.springframework.integration.util.MessagingMethodInvokerHelper.process(MessagingMethodInvokerHelper.java:127)
at org.springframework.integration.handler.MethodInvokingMessageProcessor.processMessage(MethodInvokingMessageProcessor.java:73)
... 49 more
**Shiro.ini**
[main]
myRealm=com.java.gwt.server.auth.MyRealm
myCacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager
securityManager.cacheManager = $myCacheManager
securityManager.sessionManager.globalSessionTimeout = 9000000
I have also tried to use EhCache manager.
For login, I am using the same information as shown in the shiro's 10 minute tutorial.
Thanks for your time.

Related

Filenet Invoke step get locked in fnsystem user

I have a invoke step in my work flow that run and send the request to server and get the respond from it , but it get locked at this step to the "fnsystem" user
In information Stack it shows Queue as WSRequest(0) and Error Number 0x0 for invoke step (F_QueueWPClassId is "-9(WSRequest)")
In process engine log it shows error of
XXXX-XX-XXXXX:25:01.439 7BDFD491 ENG FNRCE0001E - ERROR method name: XXXX/XX/XX XX:53:21.762+0530 CMDp.CRT7933 XXXXXXX DB=CXXXXXX Reg#2 [Error] FNRPE2131090405E CMExecute[913].XXXXX.CRXXXXX_2.WSRequest.fnsystem [XXXX_XXXXXBalanceStates:5C4XXX075XXB1C4EXXXXEF4A2C21XXX4:Workflow:Invoke] DISPATCH FAILED!; Exception: Unexpected exception -- see chained exception
at filenet.jpe.database.DbTransaction.throwTranException(DbTransaction.java:1103)
at filenet.jpe.database.DbTransaction.HandleDistributedTransactionError(DbTransaction.java:678)
at filenet.jpe.cm.CMExecuteAStepTask._saveStep(CMExecuteAStepTask.java:573)
at filenet.jpe.cm.CMExecuteAStepTask.dispatchStep(CMExecuteAStepTask.java:402)
at filenet.jpe.cm.ws.WSInvokeOperation.invoke(WSInvokeOperation.java:949)
at filenet.jpe.cm.ws.PEWSRequestAdaptor.execute(PEWSRequestAdaptor.java:105)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker$1.run(CMExecuteAStepTask.java:161)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker$1.run(CMExecuteAStepTask.java:145)
at java.security.AccessController.doPrivileged(AccessController.java:488)
at javax.security.auth.Subject.doAs(Subject.java:573)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:196)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:153)
at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at com.filenet.apiimpl.util.J2EEUtilWS.doAs(J2EEUtilWS.java:239)
at com.filenet.api.util.UserContext.doAs(UserContext.java:142)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker.call(CMExecuteAStepTask.java:143)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker.run(CMExecuteAStepTask.java:188)
at filenet.jpe.cm.CMExecuteAStepTask.doMyJob(CMExecuteAStepTask.java:317)
at filenet.jpe.cm.CMDispatcherTask.process(CMDispatcherTask.java:408)
at filenet.jpe.cm.CMDispatcherTask.doMyJob(CMDispatcherTask.java:170)
at filenet.jpe.cm.CMBaseTask.doJob(CMBaseTask.java:103)
at filenet.jpe.server.common.DelayBackgroundTask.run(DelayBackgroundTask.java:232)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:939)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:963)
at java.lang.Thread.run(Thread.java:790)
Caused by: com.filenet.api.exception.EngineRuntimeException: FNRCE0001E: E_ACCESS_DENIED: The requester has insufficient access rights to perform the requested operation. failedBatchItem=0 errorStack={
at com.filenet.engine.persist.IndependentPersister.checkPropertyAccess(IndependentPersister.java:2365)
at com.filenet.engine.persist.IndependentPersister.checkUpdatePermissions(IndependentPersister.java:2072)
at com.filenet.engine.persist.IndependentPersister.preUpdate(IndependentPersister.java:1255)
at com.filenet.engine.persist.IndependentPersister.preExecuteChange(IndependentPersister.java:603)
at com.filenet.engine.persist.SubscribablePersister.preExecuteChange(SubscribablePersister.java:227)
at com.filenet.engine.persist.ReplicablePersister.preExecuteChange(ReplicablePersister.java:125)
at com.filenet.engine.persist.CmTaskPersister.preExecuteChange(CmTaskPersister.java:100)
at com.filenet.engine.persist.IndependentPersister.executeChangeWork(IndependentPersister.java:499)
at com.filenet.engine.persist.IndependentPersister.executeChange(IndependentPersister.java:333)
at com.filenet.engine.persist.SubscribablePersister.executeChange(SubscribablePersister.java:177)
at com.filenet.engine.jca.impl.RequestBrokerImpl.executeChanges(RequestBrokerImpl.java:1487)
at com.filenet.engine.jca.impl.RequestBrokerImpl.executeChanges(RequestBrokerImpl.java:1345)
at com.filenet.engine.ejb.EngineCoreBean._executeChanges(EngineCoreBean.java:619)
at com.filenet.engine.ejb.EngineCoreBean.executeChangesUT(EngineCoreBean.java:592)
at com.filenet.engine.ejb.EJSLocalStatelessEngineCore_22877cb1.executeChangesUT(Unknown Source)
at com.filenet.engine.ejb.EngineBean.executeChanges(EngineBean.java:909)
at com.filenet.apiimpl.transport.ejbstubs.EJSRemoteStatelessEngine_2e64c374.executeChanges(Unknown Source)
at com.filenet.apiimpl.transport.ejbstubs._Engine_Stub.executeChanges(_Engine_Stub.java:671)
at com.filenet.apiimpl.transport.ejb.EJBSession$EJBImpl._executeChanges(EJBSession.java:861)
at com.filenet.apiimpl.transport.ejb.EJBSession$EJBImpl.run(EJBSession.java:550)
at java.security.AccessController.doPrivileged(AccessController.java:488)
at javax.security.auth.Subject.doAs(Subject.java:573)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:196)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:153)
at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at com.filenet.apiimpl.util.J2EEUtilWS.doAs(J2EEUtilWS.java:239)
at com.filenet.apiimpl.transport.ejb.EJBSession$EJBImpl.executeChanges(EJBSession.java:599)
at com.filenet.apiimpl.transport.ejb.EJBSession.executeChanges(EJBSession.java:393)
at com.filenet.apiimpl.util.SessionHandle.executeChanges(SessionHandle.java:112)
at com.filenet.apiimpl.core.Session.callExecuteChanges(Session.java:184)
at com.filenet.apiimpl.core.Session.executeChanges(Session.java:570)
at com.filenet.api.core.UpdatingBatch.updateBatch(UpdatingBatch.java:168)
at filenet.jpe.server.common.CETransactionCache$FlushCEObjectsOnTransactionCommit.priorToCommitOp(CETransactionCache.java:228)
at filenet.jpe.database.DbTransaction.ProcessPriorToCommitTranOpSet(DbTransaction.java:1229)
at filenet.jpe.database.DbTransaction.executePriorToCommitOps(DbTransaction.java:584)
at filenet.jpe.database.DbTransaction.EndDistributedTransaction(DbTransaction.java:522)
at filenet.jpe.cm.CMExecuteAStepTask._saveStep(CMExecuteAStepTask.java:566)
at filenet.jpe.cm.CMExecuteAStepTask.dispatchStep(CMExecuteAStepTask.java:402)
at filenet.jpe.cm.ws.WSInvokeOperation.invoke(WSInvokeOperation.java:949)
at filenet.jpe.cm.ws.PEWSRequestAdaptor.execute(PEWSRequestAdaptor.java:105)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker$1.run(CMExecuteAStepTask.java:161)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker$1.run(CMExecuteAStepTask.java:145)
at java.security.AccessController.doPrivileged(AccessController.java:488)
at javax.security.auth.Subject.doAs(Subject.java:573)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:196)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:153)
at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at com.filenet.apiimpl.util.J2EEUtilWS.doAs(J2EEUtilWS.java:239)
at com.filenet.api.util.UserContext.doAs(UserContext.java:142)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker.call(CMExecuteAStepTask.java:143)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker.run(CMExecuteAStepTask.java:188)
at filenet.jpe.cm.CMExecuteAStepTask.doMyJob(CMExecuteAStepTask.java:317)
at filenet.jpe.cm.CMDispatcherTask.process(CMDispatcherTask.java:408)
at filenet.jpe.cm.CMDispatcherTask.doMyJob(CMDispatcherTask.java:170)
at filenet.jpe.cm.CMBaseTask.doJob(CMBaseTask.java:103)
at filenet.jpe.server.common.DelayBackgroundTask.run(DelayBackgroundTask.java:232)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:939)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:963)
at java.lang.Thread.run(Thread.java:790)
}
at sun.reflect.GeneratedConstructorAccessor173.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:39)
at java.lang.reflect.Constructor.newInstance(Constructor.java:527)
at com.ibm.rmi.io.NoArgNewInstanceAction.run(NoArgNewInstanceAction.java:43)
at java.security.AccessController.doPrivileged(AccessController.java:453)
at com.ibm.rmi.io.ExternalizableFactory.allocateNewExternalizableObject(ExternalizableFactory.java:62)
at com.ibm.rmi.io.FastPathForCollocated.deepCopy(FastPathForCollocated.java:240)
at com.ibm.rmi.io.ORBVM.deepCopyIfRequired(ORBVM.java:83)
at com.ibm.oti.vm.ORBVMHelpers.vmDeepCopy(ORBVMHelpers.java:206)
at com.ibm.rmi.io.VMDeepCopier.performDeepCopy(VMDeepCopier.java:229)
at com.ibm.rmi.io.FastPathForCollocated.writeNonStaticNonTransientFields(FastPathForCollocated.java:358)
at com.ibm.rmi.io.IIOPOutputStream.defaultWriteObjectDelegate(IIOPOutputStream.java:608)
at com.ibm.rmi.io.OutputStreamHook.defaultWriteObject(OutputStreamHook.java:133)
at java.lang.Throwable.writeObject(Throwable.java:321)
at sun.reflect.GeneratedMethodAccessor168.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at com.ibm.rmi.io.FastPathForCollocated.invokeWriteObjectMethod(FastPathForCollocated.java:753)
at com.ibm.rmi.io.FastPathForCollocated.invokeWriteAndReadObjects(FastPathForCollocated.java:575)
at com.ibm.rmi.io.FastPathForCollocated.deepCopy(FastPathForCollocated.java:280)
at com.ibm.rmi.iiop.ObjectCopierFactory$DeepObjectCopier.doWork(ObjectCopierFactory.java:327)
at com.ibm.rmi.iiop.ObjectCopierFactory$AbstractCopier.waitForCompletion(ObjectCopierFactory.java:169)
at com.ibm.rmi.iiop.ObjectCopierFactory$AbstractCopier.getCopy(ObjectCopierFactory.java:187)
at com.ibm.rmi.util.ProxyUtil.copyObject(ProxyUtil.java:372)
at com.ibm.CORBA.iiop.UtilDelegateImpl.copyObject(UtilDelegateImpl.java:861)
at javax.rmi.CORBA.Util.copyObject(Util.java:327)
at com.filenet.apiimpl.transport.ejbstubs._Engine_Stub.executeChanges(_Engine_Stub.java:674)
at com.filenet.apiimpl.transport.ejb.EJBSession$EJBImpl._executeChanges(EJBSession.java:861)
at com.filenet.apiimpl.transport.ejb.EJBSession$EJBImpl.run(EJBSession.java:550)
at java.security.AccessController.doPrivileged(AccessController.java:488)
at javax.security.auth.Subject.doAs(Subject.java:573)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:196)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:153)
at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at com.filenet.apiimpl.util.J2EEUtilWS.doAs(J2EEUtilWS.java:239)
at com.filenet.apiimpl.transport.ejb.EJBSession$EJBImpl.executeChanges(EJBSession.java:599)
at com.filenet.apiimpl.transport.ejb.EJBSession.executeChanges(EJBSession.java:393)
at com.filenet.apiimpl.util.SessionHandle.executeChanges(SessionHandle.java:112)
at com.filenet.apiimpl.core.Session.callExecuteChanges(Session.java:184)
at com.filenet.apiimpl.core.Session.executeChanges(Session.java:570)
at com.filenet.api.core.UpdatingBatch.updateBatch(UpdatingBatch.java:168)
at filenet.jpe.server.common.CETransactionCache$FlushCEObjectsOnTransactionCommit.priorToCommitOp(CETransactionCache.java:228)
at filenet.jpe.database.DbTransaction.ProcessPriorToCommitTranOpSet(DbTransaction.java:1229)
at filenet.jpe.database.DbTransaction.executePriorToCommitOps(DbTransaction.java:584)
at filenet.jpe.database.DbTransaction.EndDistributedTransaction(DbTransaction.java:522)
at filenet.jpe.cm.CMExecuteAStepTask._saveStep(CMExecuteAStepTask.java:566)
... 24 more
XXXX/XX/XX XX:53:48.078+0530 CMDp.CRT7933 PEPrimary2 DB=XXXXXXX Reg#2 [Error] Exception during ISI processing work object XXXX2EBA46BDXXXXABCD3XXXX40; Exception: com.filenet.api.exception.EngineRuntimeException: FNRCE0057E: E_READ_ONLY: The method failed because an object or property is read-only. Read-only property XXXX_XXXXdateStates cannot be updated.
at com.filenet.apiimpl.property.PropertiesImpl.checkSettable(PropertiesImpl.java:696)
at com.filenet.apiimpl.property.PropertiesImpl.checkSettable(PropertiesImpl.java:666)
at com.filenet.apiimpl.property.PropertiesImpl.putObjectValue(PropertiesImpl.java:356)
at filenet.jpe.expr.ExpressionEvaluator$ExprCEReferenceObject.setFieldValue(ExpressionEvaluator.java:246)
at filenet.jpe.definitions.AssignWorkOrder.evalExpr(AssignWorkOrder.java:340)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.executeOpAssign(InstructionSheetInterpreterClass.java:4197)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.doAdvance(InstructionSheetInterpreterClass.java:2746)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.doExecute(InstructionSheetInterpreterClass.java:2042)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.advance(InstructionSheetInterpreterClass.java:1004)
at filenet.jpe.cm.CMExecuteAStepTask._saveStep(CMExecuteAStepTask.java:556)
at filenet.jpe.cm.CMExecuteAStepTask.dispatchStep(CMExecuteAStepTask.java:402)
at filenet.jpe.cm.ws.WSInvokeOperation.invoke(WSInvokeOperation.java:949)
at filenet.jpe.cm.ws.PEWSRequestAdaptor.execute(PEWSRequestAdaptor.java:105)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker$1.run(CMExecuteAStepTask.java:161)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker$1.run(CMExecuteAStepTask.java:145)
at java.security.AccessController.doPrivileged(AccessController.java:488)
at javax.security.auth.Subject.doAs(Subject.java:573)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:196)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:153)
at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at com.filenet.apiimpl.util.J2EEUtilWS.doAs(J2EEUtilWS.java:239)
at com.filenet.api.util.UserContext.doAs(UserContext.java:142)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker.call(CMExecuteAStepTask.java:143)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker.run(CMExecuteAStepTask.java:188)
at filenet.jpe.cm.CMExecuteAStepTask.doMyJob(CMExecuteAStepTask.java:317)
at filenet.jpe.cm.CMDispatcherTask.process(CMDispatcherTask.java:408)
at filenet.jpe.cm.CMDispatcherTask.doMyJob(CMDispatcherTask.java:170)
at filenet.jpe.cm.CMBaseTask.doJob(CMBaseTask.java:103)
at filenet.jpe.server.common.DelayBackgroundTask.run(DelayBackgroundTask.java:232)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:939)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:963)
at java.lang.Thread.run(Thread.java:790)
XXXX/XX/XX XX:53:48.079+0530 CMDp.CRT7933 PEPrimary2 DB=CRTOSDC Reg#2 [Error] ISI Exception (Wob 3E4EXXXX46BDCCC9ABCD38A7745); Exception: com.filenet.api.exception.EngineRuntimeException: FNRCE0057E: E_READ_ONLY: The method failed because an object or property is read-only. Read-only property XXXX_XXXXdateStates cannot be updated.
at com.filenet.apiimpl.property.PropertiesImpl.checkSettable(PropertiesImpl.java:696)
at com.filenet.apiimpl.property.PropertiesImpl.checkSettable(PropertiesImpl.java:666)
at com.filenet.apiimpl.property.PropertiesImpl.putObjectValue(PropertiesImpl.java:356)
at filenet.jpe.expr.ExpressionEvaluator$ExprCEReferenceObject.setFieldValue(ExpressionEvaluator.java:246)
at filenet.jpe.definitions.AssignWorkOrder.evalExpr(AssignWorkOrder.java:340)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.executeOpAssign(InstructionSheetInterpreterClass.java:4197)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.doAdvance(InstructionSheetInterpreterClass.java:2746)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.doExecute(InstructionSheetInterpreterClass.java:2042)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.advance(InstructionSheetInterpreterClass.java:1004)
at filenet.jpe.cm.CMExecuteAStepTask._saveStep(CMExecuteAStepTask.java:556)
at filenet.jpe.cm.CMExecuteAStepTask.dispatchStep(CMExecuteAStepTask.java:402)
at filenet.jpe.cm.ws.WSInvokeOperation.invoke(WSInvokeOperation.java:949)
at filenet.jpe.cm.ws.PEWSRequestAdaptor.execute(PEWSRequestAdaptor.java:105)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker$1.run(CMExecuteAStepTask.java:161)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker$1.run(CMExecuteAStepTask.java:145)
at java.security.AccessController.doPrivileged(AccessController.java:488)
at javax.security.auth.Subject.doAs(Subject.java:573)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:196)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:153)
at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at com.filenet.apiimpl.util.J2EEUtilWS.doAs(J2EEUtilWS.java:239)
at com.filenet.api.util.UserContext.doAs(UserContext.java:142)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker.call(CMExecuteAStepTask.java:143)
at filenet.jpe.cm.CMExecuteAStepTask$TaskWorker.run(CMExecuteAStepTask.java:188)
at filenet.jpe.cm.CMExecuteAStepTask.doMyJob(CMExecuteAStepTask.java:317)
at filenet.jpe.cm.CMDispatcherTask.process(CMDispatcherTask.java:408)
at filenet.jpe.cm.CMDispatcherTask.doMyJob(CMDispatcherTask.java:170)
at filenet.jpe.cm.CMBaseTask.doJob(CMBaseTask.java:103)
at filenet.jpe.server.common.DelayBackgroundTask.run(DelayBackgroundTask.java:232)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:939)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:963)
at java.lang.Thread.run(Thread.java:790)
the invoke is a system step run by a fnsystem user and property "XXXX_XXXXdateStates" on all workflow steps & properties shows as read-write .
why this step failed at system stem to the "fnsystem" user even all steps and workflow definition properties shows it as read-write , any input is highly appreciated..
EDIT
Note: "fnsystems" is in object store properties with all permission
I have replaced my property XXXX_XXXXdateStates with a new property because i was thinking maybe the access rights didn't inherit for my object store or roster.and i got same error (E_ACCESS_DENIED) for a system task(TaskState update) with a system property (LastFailureReason)
2018/XX/XX XX:XX:XX.252+0530 CMRX.CRXXA4X PESecondary1 [Error] FNRPE2131090405E fail to move wob 87D6770XXX34194XXX7A3D2 to exception submap Malfunction; Exception: Unexpected exception -- see chained exception
at filenet.jpe.database.DbTransaction.throwTranException(DbTransaction.java:1103)
at filenet.jpe.database.DbTransaction.HandleDistributedTransactionError(DbTransaction.java:678)
at filenet.jpe.cm.CMRecoveryTask.doMyJob(CMRecoveryTask.java:135)
at filenet.jpe.cm.CMBaseTask.doJob(CMBaseTask.java:103)
at filenet.jpe.server.common.DelayBackgroundTask.run(DelayBackgroundTask.java:232)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:939)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:963)
at java.lang.Thread.run(Thread.java:790)
Caused by: com.filenet.api.exception.EngineRuntimeException: FNRCE0001E: E_ACCESS_DENIED: The requester has insufficient access rights to perform the requested operation. failedBatchItem=0 errorStack={
at com.filenet.engine.persist.IndependentPersister.checkPropertyAccess(IndependentPersister.java:2365)
at com.filenet.engine.persist.IndependentPersister.checkUpdatePermissions(IndependentPersister.java:2072)
at com.filenet.engine.persist.IndependentPersister.preUpdate(IndependentPersister.java:1255)
at com.filenet.engine.persist.IndependentPersister.preExecuteChange(IndependentPersister.java:603)
at com.filenet.engine.persist.SubscribablePersister.preExecuteChange(SubscribablePersister.java:227)
at com.filenet.engine.persist.ReplicablePersister.preExecuteChange(ReplicablePersister.java:125)
at com.filenet.engine.persist.CmTaskPersister.preExecuteChange(CmTaskPersister.java:100)
at com.filenet.engine.persist.IndependentPersister.executeChangeWork(IndependentPersister.java:499)
XXXX/XX/XX 14:23:57.255+0530 CMRX.CRTCA47 PESecondary1 DB=CRTXXXX Reg#2 [Error] Wob EBAE2XXXXX8D4AA750XXXF4AB476, Exception on TaskState update (Work Performer Exception: LOCK TIMEOUT).; Exception: com.filenet.api.exception.EngineRuntimeException: FNRCE0057E: E_READ_ONLY: The method failed because an object or property is read-only. Read-only property LastFailureReason cannot be updated.
at com.filenet.apiimpl.property.PropertiesImpl.checkSettable(PropertiesImpl.java:696)
at com.filenet.apiimpl.property.PropertiesImpl.checkSettable(PropertiesImpl.java:666)
at com.filenet.apiimpl.property.PropertiesImpl.putValue(PropertiesImpl.java:370)
at filenet.jpe.server.isi.TaskStateUpdater.reallySetException(TaskStateUpdater.java:183)
at filenet.jpe.server.isi.TaskStateUpdater.setException(TaskStateUpdater.java:108)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.callExceptionIS(InstructionSheetInterpreterClass.java:3669)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.doAdvance(InstructionSheetInterpreterClass.java:2304)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.doExecute(InstructionSheetInterpreterClass.java:2042)
at filenet.jpe.server.isi.InstructionSheetInterpreterClass.advance(InstructionSheetInterpreterClass.java:1004)
at filenet.jpe.cm.CMRecoveryTask.doMyJob(CMRecoveryTask.java:129)
It appears that something is wrong with your security setup. The error has nothing to do with access rights on the workflow map or those to the workflow definition. The system tries to update Content Engine object associated with the running workflow instance and fails to do so. System fnsystem account cannot get required access to that object.
You should verify that fnsystem is granted access to the object store and related objects (normally this happens by default). You should also check whether you have various security facilities like security policies or marking sets in place. They might prevent normal access to objects.
If this does not help, you should verify that CPE is installed and configured properly. Creating Content Platform Engine directory server accounts is a place to start.

Issues with derby Database using a GUI

I am asking this question because I was unable to find a similar question. I recently completed this college project where I made a console application that connected to the database and everything seemed perfectly fine. The method I used to connect to the database is this:
private static Connection getConnection()
{
Connection connection = null;
try
{
String dbDirectory = "c:/murach/java/db";
System.setProperty("derby.system.home", dbDirectory);
String dbURL = "jdbc:derby:MurachDB2";
String username = "";
String password = "";
connection = DriverManager.getConnection(dbURL, username, password);
System.out.println("connect works");
return connection;
} //end try connection statement
catch (SQLException e)
{
for (Throwable t : e)
{
e.printStackTrace();
System.out.println("something went wrong on connection method");
} //end for loop for errors
} // end catch statement for connection error
return connection;
}
As I said before I created the console application and everything seemed fine and I turned it in. However, I wanted to experiment with something, I wanted to make another version of this application but instead a GUI application using Jform. I used all of the same classes as before, except that instead of a main class, I used a jform. The method and class is exactly the same, because the database didn't change locations in my folder, however when I run it in the Jform application I get a runtime error.
What it was a null point error and I knew it had something to do with connecting to the database because I wrote a System.out.Println in the catch SQL Exception to notify that something went wrong with the method. The connect to the database is fine with the console application, but my question is if there is any further measures I need to take when it comes to working with a JFrame application. Is there anything I am missing or is there any extra step I need to do. For further measures I will display the whole class that works with the database, and I will also use the event handlers in the Jframe.
I want to make this clear in which that I am not required to do this. I am just playing around with Java, and I could easily leave this alone without consequences, but I feel I really want to learn this so this is why I am asking for help. Any kind of advice or if any of you can let you know what I am missing I would really appreciate it.
Edit
adding error information
>java.sql.SQLException: No suitable driver found for jdbc:derby:MurachDB2
something went wrong on connection method
java.lang.NullPointerException
something went from with dislay part
at java.sql.DriverManager.getConnection(DriverManager.java:689)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at CustomerInvoiceDB.getConnection(CustomerInvoiceDB.java:38)
at CustomerInvoiceDB.getCustomers(CustomerInvoiceDB.java:67)
at CutomerInvoice.displayButtonActionPerformed(CutomerInvoice.java:111)
at CutomerInvoice.access$000(CutomerInvoice.java:24)
at CutomerInvoice$1.actionPerformed(CutomerInvoice.java:57)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6533)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6298)
at java.awt.Container.processEvent(Container.java:2236)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
at java.awt.Container.dispatchEventImpl(Container.java:2280)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

In springframework, Validation error doesn't display rather getting HTTP Status 500

I have a very simple application for customer data entry.
Only the new customer entry page is working and data is getting inserted in db, but when i intensionally enter more then 10 digits in mobileNo field, i get error in browser.
Here is github link https://github.com/kalyan4github/cdb.git
**the full error logs is type Exception report**
message Failed to convert value of type 'com.trickytechnos.cdb.domain.Customer' to required type 'java.lang.String'; nested exception is java.lang.IllegalStateException: Cannot convert value of type [com.trickytechnos.cdb.domain.Customer] to required type [java.lang.String]: no matching editors or conversion strategy found
description The server encountered an internal error that prevented it from fulfilling this request.
exception
org.springframework.beans.ConversionNotSupportedException: Failed to convert value of type 'com.trickytechnos.cdb.domain.Customer' to required type 'java.lang.String'; nested exception is java.lang.IllegalStateException: Cannot convert value of type [com.trickytechnos.cdb.domain.Customer] to required type [java.lang.String]: no matching editors or conversion strategy found
org.springframework.beans.TypeConverterSupport.doConvert(TypeConverterSupport.java:74)
org.springframework.beans.TypeConverterSupport.convertIfNecessary(TypeConverterSupport.java:40)
org.springframework.validation.DataBinder.convertIfNecessary(DataBinder.java:575)
org.springframework.web.servlet.mvc.support.RedirectAttributesModelMap.formatValue(RedirectAttributesModelMap.java:79)
org.springframework.web.servlet.mvc.support.RedirectAttributesModelMap.addAttribute(RedirectAttributesModelMap.java:71)
org.springframework.web.servlet.mvc.support.RedirectAttributesModelMap.addAttribute(RedirectAttributesModelMap.java:34)
com.trickytechnos.cdb.controller.CustomerController.addCustomer(CustomerController.java:54)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:497)
org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:214)
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:748)
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:689)
org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:83)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:945)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:876)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:931)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:833)
javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:807)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
com.github.dandelion.datatables.core.web.filter.DatatablesFilter.doFilter(DatatablesFilter.java:73)
root cause
java.lang.IllegalStateException: Cannot convert value of type [com.trickytechnos.cdb.domain.Customer] to required type [java.lang.String]: no matching editors or conversion strategy found
org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:267)
org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:93)
org.springframework.beans.TypeConverterSupport.doConvert(TypeConverterSupport.java:64)
org.springframework.beans.TypeConverterSupport.convertIfNecessary(TypeConverterSupport.java:40)
org.springframework.validation.DataBinder.convertIfNecessary(DataBinder.java:575)
org.springframework.web.servlet.mvc.support.RedirectAttributesModelMap.formatValue(RedirectAttributesModelMap.java:79)
org.springframework.web.servlet.mvc.support.RedirectAttributesModelMap.addAttribute(RedirectAttributesModelMap.java:71)
org.springframework.web.servlet.mvc.support.RedirectAttributesModelMap.addAttribute(RedirectAttributesModelMap.java:34)
com.trickytechnos.cdb.controller.CustomerController.addCustomer(CustomerController.java:54)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:497)
org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:214)
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:748)
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:689)
org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:83)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:945)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:876)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:931)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:833)
javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:807)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
com.github.dandelion.datatables.core.web.filter.DatatablesFilter.doFilter(DatatablesFilter.java:73)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.56 logs.
Apache Tomcat/7.0.56
This is the output in console
Field error in object 'customer' on field 'mobileNo': rejected value [12345678912]; codes [Size.customer.mobileNo,Size.mobileNo,Size.java.lang.String,Size]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [customer.mobileNo,mobileNo]; arguments []; default message [mobileNo],10,0]; default message [mobileno must be 10 digit]
Please help me as why am i getting this error and the validation message is displayed in console instead in thymeleaf template.

OutputFormat NotSupported in Birt Report Engine API

I want to render a previously designed BIRT report to HTML in Eclipse Indigo. I am using BIRT 4.2.1. When I do it in a normal Java application it runs fine. However, when I want to do the same from a RCP application it does not.
This is my code:
IRunAndRenderTask task=null;
IReportEngine engine=null;
EngineConfig config = null;
IReportRunnable design = null;
try{
config = new EngineConfig( );
IReportEngineFactory factory = (IReportEngineFactory) Platform.
createFactoryObject( IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY );
engine = factory.createReportEngine( config );
//use this if the report is in the bundle
Bundle bundle = org.eclipse.core.runtime.Platform.getBundle("com.accenture.workforceplanning.ui");
URL url = FileLocator.find(bundle, new Path("/reports/scenarioAnalysis.rptdesign"), null);
String rpt = FileLocator.toFileURL(url).getPath();
//Open the report design
design = engine.openReportDesign(rpt);
task = engine.createRunAndRenderTask(design);
HTMLRenderOption options = new HTMLRenderOption();
options.setImageDirectory("./");
URL url1 = FileLocator.find(bundle, new Path("/reports"), null);
String rpt1 = FileLocator.toFileURL(url1).getPath();
options.setOutputFileName(rpt1 +"/scenarioAnalysis.html");
options.setOutputFormat("html");
task.setRenderOption(options);
task.run();
task.close();
engine.destroy();
}catch( Exception ex){
ex.printStackTrace();
}
When the program reaches the task.run() I get the following error:
org.eclipse.birt.report.engine.api.UnsupportedFormatException: The output format html is not supported.
at org.eclipse.birt.report.engine.api.impl.EngineTask.setupRenderOption(EngineTask.java:2047)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:96)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:77)
at com.accenture.workforceplanning.ui.composites.OutputComposite.reportToHtml(OutputComposite.java:470)
at com.accenture.workforceplanning.ui.composites.OutputComposite.createReportScenarioAnalysis(OutputComposite.java:410)
at com.accenture.workforceplanning.ui.composites.OutputComposite.access$6(OutputComposite.java:308)
at com.accenture.workforceplanning.ui.composites.OutputComposite$4.widgetSelected(OutputComposite.java:214)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:240)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at com.accenture.workforceplanning.application.Application.start(Application.java:26)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
It happens the same for any type of outputformat that I want to render.
Any idea what I am doing wrong?
Thanks
Yulexi
I have managed to solve issue. Just in case somebody encounters the same problem this is what I did:
I added manually all the BIRT plug-ins to the dependencies of the product of my RCP application(For some reason, the required plug-ins were not added). Still I don't know what was the missing plug-in. But the application works fine now.

PropertyTypeDescriptor and Spring 3.1.2

I'm working on a project using Spring-Flex 1.5.2 and Spring 3.1.2 and recently after adding some DAO's to my project i started getting this error on the WebLogic Console when trying to populate one of my combos:
[BlazeDS]org/springframework/core/convert/support/PropertyTypeDescriptor
java.lang.NoClassDefFoundError: org/springframework/core/convert/support/PropertyTypeDescriptor
at org.springframework.flex.core.io.HibernateProxyConverter.convert(HibernateProxyConverter.java:48)
at org.springframework.core.convert.support.ConversionUtils.invokeConverter(ConversionUtils.java:35)
at org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:171)
at org.springframework.flex.core.io.SpringPropertyProxy.getValue(SpringPropertyProxy.java:160)
at flex.messaging.io.amf.Amf3Output.writePropertyProxy(Amf3Output.java:601)
at flex.messaging.io.amf.Amf3Output.writeCustomObject(Amf3Output.java:532)
at flex.messaging.io.amf.Amf3Output.writeObject(Amf3Output.java:207)
at flex.messaging.io.amf.Amf3Output.writeObjectArray(Amf3Output.java:854)
at flex.messaging.io.amf.Amf3Output.writeAMFArray(Amf3Output.java:445)
at flex.messaging.io.amf.Amf3Output.writeObject(Amf3Output.java:193)
at flex.messaging.io.ArrayCollection.writeExternal(ArrayCollection.java:97)
at flex.messaging.io.amf.Amf3Output.writePropertyProxy(Amf3Output.java:594)
at flex.messaging.io.amf.Amf3Output.writeArrayCollection(Amf3Output.java:476)
at flex.messaging.io.amf.Amf3Output.writeObject(Amf3Output.java:189)
at flex.messaging.messages.AbstractMessage.writeExternalBody(AbstractMessage.java:705)
at flex.messaging.messages.AbstractMessage.writeExternal(AbstractMessage.java:435)
at flex.messaging.messages.AsyncMessage.writeExternal(AsyncMessage.java:140)
at flex.messaging.messages.AcknowledgeMessage.writeExternal(AcknowledgeMessage.java:94)
at flex.messaging.messages.AcknowledgeMessageExt.writeExternal(AcknowledgeMessageExt.java:55)
at flex.messaging.io.amf.Amf3Output.writePropertyProxy(Amf3Output.java:594)
at flex.messaging.io.amf.Amf3Output.writeCustomObject(Amf3Output.java:532)
at flex.messaging.io.amf.Amf3Output.writeObject(Amf3Output.java:112)
at flex.messaging.io.amf.Amf0Output.writeObject(Amf0Output.java:206)
at flex.messaging.io.amf.AmfMessageSerializer.writeObject(AmfMessageSerializer.java:196)
at flex.messaging.io.amf.AmfMessageSerializer.writeBody(AmfMessageSerializer.java:186)
at flex.messaging.io.amf.AmfMessageSerializer.writeMessage(AmfMessageSerializer.java:142)
at flex.messaging.endpoints.amf.SerializationFilter.invoke(SerializationFilter.java:198)
at flex.messaging.endpoints.BaseHTTPEndpoint.service(BaseHTTPEndpoint.java:291)
at flex.messaging.endpoints.AMFEndpoint$$EnhancerByCGLIB$$25364767.service(<generated>)
at org.springframework.flex.servlet.MessageBrokerHandlerAdapter.handle(MessageBrokerHandlerAdapter.java:109)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:147)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)
at com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3496)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Unknown Source)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: java.lang.ClassNotFoundException: org.springframework.core.convert.support.PropertyTypeDescriptor
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:283)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:256)
at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:54)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:176)
at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:35)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
... 57 more
Google has failed me on this one... so any help is greatly appreciated.
I have annotated my services with #RemotingDestination and created the Remote Objects in my Mxml, like this:
<s:RemoteObject id="marketSegment" destination="marketSegmentServiceImpl" endpoint="http://localhost:7001/scpi/messageBroker/amf"></s:RemoteObject>
then i'm adding this on my combobox:
dataProvider="{marketSegment.findAllCatalogs.lastResult}"
and this on my creationComplete:
private function init():void{
marketSegment.findAllCatalogs();
biotech.findAllCatalogs();
}
This is working to fetch obects that have only primitive type properties, but fails with the mentioned error when trying to fetch any object with complex type properties.
It looks like some versions are incompatible.
The class org.springframework.core.convert.support.PropertyTypeDescriptor was removed in Spring 3.1!
Have a look at the jar that contains org.springframework.flex.core.io.HibernateProxyConverter.
Maybe you find in the pom.xml the version of spring-core that is needed.

Resources