on 10-14-2008 12:21 PM
When I try to access an EJB 3 web service with a stateless session bean and entity beans I get this exception:
unexpected exception caught from test
[EXCEPTION]
java.lang.IllegalArgumentException: The value >>null<< is no valid temporal type.
at com.sap.engine.services.orpersistence.model.ormappingmodel.impl.ORMUtils.parseTemporalType(ORMUtils.java:1172)
at com.sap.engine.services.orpersistence.model.ormappingmodel.impl.ORMappingModelCreatorImpl.parseEmbeddableBasic(ORMappingModelCreatorImpl.java:3700)
at com.sap.engine.services.orpersistence.model.ormappingmodel.impl.ORMappingModelCreatorImpl.parseEmbeddableSingleFields(ORMappingModelCreatorImpl.java:3406)
at com.sap.engine.services.orpersistence.model.ormappingmodel.impl.ORMappingModelCreatorImpl.parseEmbeddedFields(ORMappingModelCreatorImpl.java:3990)
at com.sap.engine.services.orpersistence.model.ormappingmodel.impl.ORMappingModelCreatorImpl.parseEmbeddedFields(ORMappingModelCreatorImpl.java:3802)
at com.sap.engine.services.orpersistence.model.ormappingmodel.impl.ORMappingModelCreatorImpl.parsePersistentClass(ORMappingModelCreatorImpl.java:1060)
at com.sap.engine.services.orpersistence.model.ormappingmodel.impl.ORMappingModelCreatorImpl.createModel(ORMappingModelCreatorImpl.java:366)
at com.sap.engine.services.orpersistence.model.ormappingmodel.impl.ORMappingModelCreatorImpl.createModel(ORMappingModelCreatorImpl.java:321)
at com.sap.engine.services.orpersistence.model.builders.ModuleCreator.fillORMappingModel(ModuleCreator.java:153)
at com.sap.tc.jtools.jlinee.orpersistence.tests.ModelCreatorTest.execute(ModelCreatorTest.java:35)
at com.sap.tc.jtools.jlinee.lib.framework.dependency.Node.execute(Node.java:211)
at com.sap.tc.jtools.jlinee.lib.framework.JLinEETestProcessor.executeAll(JLinEETestProcessor.java:153)
at com.sap.tc.jtools.jlinee.lib.framework.JLinEETestProcessor.execute(JLinEETestProcessor.java:123)
at com.sap.engine.jlinee.lib.impl.TestManager.executeTestsForAppComponent(TestManager.java:153)
at com.sap.engine.jlinee.lib.impl.TestManager.executeTests(TestManager.java:88)
at com.sap.engine.jlinee.lib.JLinEEValidatorImpl.validateApplication(JLinEEValidatorImpl.java:143)
at com.sap.engine.services.deploy.server.validate.jlin.impl.JLinPluninImpl.exec(JLinPluninImpl.java:80)
at com.sap.engine.services.deploy.server.application.DeployUtilTransaction.validateApplication(DeployUtilTransaction.java:346)
at com.sap.engine.services.deploy.server.application.DeployUtilTransaction.commonBegin(DeployUtilTransaction.java:234)
at com.sap.engine.services.deploy.server.application.UpdateTransaction.begin(UpdateTransaction.java:196)
at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:411)
at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:445)
at com.sap.engine.services.deploy.server.DeployServiceImpl.makeGlobalTransaction(DeployServiceImpl.java:2528)
at com.sap.engine.services.deploy.server.DeployServiceImpl.update(DeployServiceImpl.java:493)
at com.sap.engine.services.deploy.server.DeployServiceImpl.update(DeployServiceImpl.java:393)
at com.sap.engine.services.dc.gd.impl.ApplicationDeployer.update(ApplicationDeployer.java:61)
at com.sap.engine.services.dc.gd.impl.InitialApplicationDeployer.performDeployment(InitialApplicationDeployer.java:95)
at com.sap.engine.services.dc.gd.impl.InitialGenericDeliveryImpl.deploy(InitialGenericDeliveryImpl.java:59)
at com.sap.engine.services.dc.cm.deploy.impl.OnlineDeployProcessor.performDelivery(OnlineDeployProcessor.java:158)
at com.sap.engine.services.dc.cm.deploy.impl.BulkOnlineDeployProcessor.deploy(BulkOnlineDeployProcessor.java:48)
at com.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor$DeployProcessorHelper.visit(AbstractDeployProcessor.java:178)
at com.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:83)
at com.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor.deploy(AbstractDeployProcessor.java:77)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.performDeploy(DeployerImpl.java:726)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.doDeploy(DeployerImpl.java:576)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deploy(DeployerImpl.java:270)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deploy(DeployerImpl.java:192)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImplp4_Skel.dispatch(DeployerImplp4_Skel.java:875)
at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:351)
at com.sap.engine.services.rmi_p4.server.ServerDispatchImpl.run(ServerDispatchImpl.java:70)
at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:62)
at com.sap.engine.services.rmi_p4.P4Message.execute(P4Message.java:37)
at com.sap.engine.services.cross.fca.FCAConnectorImpl.executeRequest(FCAConnectorImpl.java:877)
at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:53)
at com.sap.engine.services.cross.fca.MessageReader.run(MessageReader.java:58)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:108)
at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:304)
Does anybody know what this means and how one can solve it? I am using NetWeaver CE 7.1 with MaxDB.
Regards,
Tarik
HI,
Will you elaborate more, as when you got this error,
when creating a model in WD, or when executing the WS.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi snehal
The stacktrace is logged when one tries to call a function of the service, but the exception occurres in NW before the service function actually is executed. I've also seen that the same message is printed as warning during the deployment:
Model Creator: exception occurred in test: java.lang.IllegalArgumentException: The value >>null<< is no valid temporal type. at com.sap.engine.services.orpersistence.model.ormappingmodel.impl.ORMUtils.parseTemporalType(ORMUtils.java:1172)
Does "occurred in test" mean, that NW tests the JAR and that is what fails? The service doesn't contain "test" anywhere in it...
Regards,
Tarik
Just in case anybody else doesn't understand what "The value >>null<< is no valid temporal type." means. NW seems to print this message if a entity bean uses a data type which is not supported by the SAP ORM. Eg. java.sql.Date is supported but java.util.Date not. Since many other servers do support java.util.Date the application may still deploy on other servers, but fails to deploy on NW.
If an EJB 3 is used as WebService the change from java.util.Date to java.sql.Date may cause a new Exception:
...
java.lang.ClassCastException: class com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl$5:library:jaxb20@ com.sap.engine.boot.loader.ResourceMultiParentClassLoader@ 163d208@ alive incompatible with class com.sun.xml.bind.v2.model.impl.ClassInfoImpl:library:jaxb20@ com.sap.engine.boot.loader.ResourceMultiParentClassLoader@ 163d208@ alive
...
This is because JAX-B on the other side cannot handle the java.sql.Date and only accepts java.util.Date. If you don't need the date fields on the client side you can solve this problem by adding an @XmlTransient annotation. If you need the date fields (which you probably do), the only thing which comes into my mind is to go back to a value object concept as used with old style EJBs. If anybody has got a better idea, I'd be pleased to hear it. I opened a separate thread [here|;.
Regards,
Tarik
User | Count |
---|---|
87 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.