the_mario Geschrieben 13. November 2008 Geschrieben 13. November 2008 Hallo, ich scheibe eine client server software. auf der serverseite scheibe ich in java einen dienst der mit hibernate(hibernate-entitymanager-3.4.0.GA) an eine datenbank gebunden(ich hab MySQL Server 5.0 ist aber egal, da hibernate das ganze portabel macht) ist und per jboss4.2.0GA von einem belibigen, in einer soap-fähigen sprache geschriebenen, client abgeholt werden können. Beim deployen meines dienstes schmeist JBoss folgende exception: Zitieren
the_mario Geschrieben 13. November 2008 Autor Geschrieben 13. November 2008 09:28:31,195 WARN [ServiceController] Problem starting service persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU java.lang.IllegalArgumentException: No PropertyTypeExtractor available for type void at org.hibernate.reflection.java.JavaXFactory.toXType(JavaXFactory.java:305) at org.hibernate.reflection.java.JavaXProperty.create(JavaXProperty.java:45) at org.hibernate.reflection.java.JavaXFactory.getXProperty(JavaXFactory.java:258) at org.hibernate.reflection.java.JavaXClass.getDeclaredMethodProperties(JavaXClass.java:88) at org.hibernate.reflection.java.JavaXClass.getDeclaredProperties(JavaXClass.java:103) at org.hibernate.reflection.java.JavaXClass.getDeclaredProperties(JavaXClass.java:95) at org.hibernate.cfg.AnnotationBinder.addElementsOfAClass(AnnotationBinder.java:945) at org.hibernate.cfg.AnnotationBinder.getElementsToProcess(AnnotationBinder.java:799) at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:622) at org.hibernate.cfg.AnnotationConfiguration.processArtifactsOfType(AnnotationConfiguration.java:452) at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:268) at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1115) at org.hibernate.ejb.Ejb3Configuration.buildMappings(Ejb3Configuration.java:1233) at org.hibernate.ejb.EventListenerConfigurator.configure(EventListenerConfigurator.java:154) at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:869) at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:407) at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:126) at org.jboss.ejb3.entity.PersistenceUnitDeployment.start(PersistenceUnitDeployment.java:246) 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:585) at org.jboss.ejb3.ServiceDelegateWrapper.startService(ServiceDelegateWrapper.java:103) at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289) at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245) at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978) at $Proxy0.start(Unknown Source) at org.jboss.system.ServiceController.start(ServiceController.java:417) at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy87.start(Unknown Source) at org.jboss.ejb3.JmxKernelAbstraction.install(JmxKernelAbstraction.java:120) at org.jboss.ejb3.Ejb3Deployment.startPersistenceUnits(Ejb3Deployment.java:551) at org.jboss.ejb3.Ejb3Deployment.start(Ejb3Deployment.java:333) at org.jboss.ejb3.Ejb3Module.startService(Ejb3Module.java:91) at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289) at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245) at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) Zitieren
the_mario Geschrieben 13. November 2008 Autor Geschrieben 13. November 2008 at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978) at $Proxy0.start(Unknown Source) at org.jboss.system.ServiceController.start(ServiceController.java:417) at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy33.start(Unknown Source) at org.jboss.ejb3.EJB3Deployer.start(EJB3Deployer.java:512) 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:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97) at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238) at org.jboss.ws.integration.jboss42.DeployerInterceptor.start(DeployerInterceptor.java:93) at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188) at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy34.start(Unknown Source) at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy9.deploy(Unknown Source) at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421) at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225) 09:28:31,195 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer 09:28:31,195 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:jar=InstantTalk.jar,name=InstantTalkService,service=EJB3 with dependencies: 09:28:31,195 INFO [JmxKernelAbstraction] persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU 09:28:31,211 INFO [EJB3Deployer] Deployed: file:/C:/jboss/jboss-4.2.0.GA/server/default/deploy/InstantTalk.jar 09:28:31,211 INFO [WSDLFilePublisher] WSDL published to: file:/C:/jboss/jboss-4.2.0.GA/server/default/data/wsdl/InstantTalk.jar/InstantTalkServiceService7026.wsdl 09:28:31,227 INFO [ServiceEndpointManager] WebService started: http://127.0.0.1:8080/InstantTalkServiceService/InstantTalkService 09:28:31,227 ERROR [URLDeploymentScanner] Incomplete Deployment listing: --- MBeans waiting for other MBeans --- ObjectName: persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU State: FAILED Reason: java.lang.IllegalArgumentException: No PropertyTypeExtractor available for type void I Depend On: jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds Depends On Me: jboss.j2ee:jar=InstantTalk.jar,name=InstantTalkService,service=EJB3 ObjectName: jboss.j2ee:jar=InstantTalk.jar,name=InstantTalkService,service=EJB3 State: NOTYETINSTALLED I Depend On: persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU --- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM --- ObjectName: persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU State: FAILED Reason: java.lang.IllegalArgumentException: No PropertyTypeExtractor available for type void I Depend On: jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds Depends On Me: jboss.j2ee:jar=InstantTalk.jar,name=InstantTalkService,service=EJB3 Sorry fürs splitten wär sonst zu lang gewesen. Vor allem No PropertyTypeExtractor available for type void macht mich irre dazu konnte ich einfach nix finden. hoffe mir kann jemand helfen vielen dank (vllt zu wenig info, wenn ja bitte bescheid sagen) MfG the_mario Zitieren
kein-tee Geschrieben 13. November 2008 Geschrieben 13. November 2008 MySQLtalk-ds hast du deployed? Gruß Zitieren
the_mario Geschrieben 13. November 2008 Autor Geschrieben 13. November 2008 (bearbeitet) also dem dienst muss man eine persistent.xml hinterlegen indem unter anderem auch der name einer datasource xml steht. in meinem fall ist die datasource xml MySQLtalk-ds.xml in der angaben zur datanbank gemacht werden die hinter hibernate steht bzw. mit der hibernate kommunizieren soll. persistent: <?xml version="1.0" encoding="UTF-8"?> <persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"> <persistence-unit name="InstantTalkPU" transaction-type="JTA"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <jta-data-source>java:/MySQLtalk-ds</jta-data-source> <properties> <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialec"/> <property name="hibernate.hbm2ddl.auto" value="update"/> </properties> </persistence-unit> </persistence> MySQLtalk.xml <?xml version="1.0" encoding="UTF-8"?> <datasources> <local-tx-datasource> <jndi-name>MySQLtalk-ds</jndi-name> <connection-url>jdbc:mysql://127.0.0.1:3306/talk</connection-url> <driver-class>com.mysql.jdbc.Driver</driver-class> <user-name>root</user-name> <password>pass</password> <min-pool-size>5</min-pool-size> <max-pool-size>20</max-pool-size> <idle-timeout-minutes>5</idle-timeout-minutes> </local-tx-datasource> </datasources> deployed hab ich die InstantTalk.jar das is er zur verfügung gestellte dienst danke schonmal für die mühe the_mario Bearbeitet 13. November 2008 von the_mario Zitieren
kein-tee Geschrieben 13. November 2008 Geschrieben 13. November 2008 (bearbeitet) Alles schön und gut, aber ich Frage mal genauer: MySQLtalk-ds.xml hast du deployed, also in das Deploy-Verzeichnis deines JBoss kopiert? Nochmal zur Erinnerung: --- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM --- [...] I Depend On: jboss.jca:service=DataSourceBinding,name=[COLOR="Red"]MySQLtalk-ds[/COLOR] [...] Gruß Bearbeitet 13. November 2008 von kein-tee Zitieren
the_mario Geschrieben 13. November 2008 Autor Geschrieben 13. November 2008 aso, ja hab ich gemacht. die liesgt im deploy ordner wo auch die jar vom dienst liegt. Zitieren
kein-tee Geschrieben 13. November 2008 Geschrieben 13. November 2008 Dann überprüfe, ob MySQLtalk-ds auch wirklich deployed wurde (z.B. durch Serverneustart). Gruß Zitieren
the_mario Geschrieben 13. November 2008 Autor Geschrieben 13. November 2008 also die serverlog sagt das sie nicht deployed wurde 2008-11-13 11:15:29,866 ERROR [org.jboss.deployment.scanner.URLDeploymentScanner] Incomplete Deployment listing: --- MBeans waiting for other MBeans --- ObjectName: persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU State: FAILED Reason: java.lang.IllegalArgumentException: No PropertyTypeExtractor available for type void I Depend On: jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds Depends On Me: jboss.j2ee:jar=InstantTalk.jar,name=InstantTalkService,service=EJB3 ObjectName: jboss.j2ee:jar=InstantTalk.jar,name=InstantTalkService,service=EJB3 State: NOTYETINSTALLED I Depend On: persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU --- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM --- ObjectName: persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU State: FAILED Reason: java.lang.IllegalArgumentException: No PropertyTypeExtractor available for type void I Depend On: jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds glaub ich zumindest wegen dem "Incomplete Deployment listing:". Zitieren
kein-tee Geschrieben 13. November 2008 Geschrieben 13. November 2008 Ich meine nicht deine 'InstantTalkPU'. Überprüf das Logfile doch mal auf Meldungen bzgl. des Deployments deiner 'MySQLtalk-ds', z.b: 2008-11-13 11:40:15,463 DEBUG [org.jboss.deployment.MainDeployer] Starting deployment of package: file:/home/bla/jboss-4.2.2.GA/server/default/deploy/MySQLtalk-ds.xml Oder halt ähnliches ... Gruß Zitieren
the_mario Geschrieben 13. November 2008 Autor Geschrieben 13. November 2008 Also das einzige was da annähernd an dein bsp ran kommt is 2008-11-13 11:15:25,569 INFO [org.jboss.ejb3.JmxKernelAbstraction] jboss.jca:name=MySQLtalk-ds,service=DataSourceBinding 2008-11-13 11:15:25,585 DEBUG [org.jboss.system.ServiceController] Creating service persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU 2008-11-13 11:15:25,585 DEBUG [org.jboss.system.ServiceController] adding depends in ServiceController.register: [jboss.jca:name=MySQLtalk-ds,service=DataSourceBinding] 2008-11-13 11:15:25,585 DEBUG [org.jboss.system.ServiceController] recording that persistence.units:jar=InstantTalk.jar,unitName=InstantTalkPU depends on jboss.jca:name=MySQLtalk-ds,service=DataSourceBinding hoffe das ist es das nächste was mit diesem namen vorkommt is das aus meinem letzten eintrag. Zitieren
the_mario Geschrieben 13. November 2008 Autor Geschrieben 13. November 2008 also nach einigem hin und her. ja die datasource wird deployd. der fehler tritt erst auf wenn der dienst noch hinzukommt. Zitieren
kein-tee Geschrieben 13. November 2008 Geschrieben 13. November 2008 ja die datasource wird deployd Nach den Log-Einträgen zu Urteilen, sieht es nicht so aus, als wäre die DS deployed wurden. In meinem Log steht z.B. 11:40:15,772 INFO [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=KTDatasource' to JNDI name 'java:KTDatasource' Ich hatte ein ähnliches Problem wie du, bei mir lag es daran, dass ich vergaß, die DS zu deployen. Gruß Zitieren
the_mario Geschrieben 14. November 2008 Autor Geschrieben 14. November 2008 (bearbeitet) Hi, Also die MySQLtalk-ds.xml liegt im jboss deploy verzeichnis. 2008-11-14 09:54:52,989 DEBUG [org.jboss.resource.connectionmanager.RARDeployment] Started jboss.jca:service=ManagedConnectionFactory,name=MySQLtalk-ds 2008-11-14 09:54:52,989 DEBUG [org.jboss.system.ServiceController] Starting dependent components for: jboss.jca:service=ManagedConnectionFactory,name=MySQLtalk-ds dependent components: [ObjectName: jboss.jca:service=ManagedConnectionPool,name=MySQLtalk-ds State: CREATED I Depend On: jboss.jca:service=ManagedConnectionFactory,name=MySQLtalk-ds Depends On Me: jboss.jca:service=LocalTxCM,name=MySQLtalk-ds ] 2008-11-14 09:54:52,989 DEBUG [org.jboss.system.ServiceController] starting service jboss.jca:service=ManagedConnectionPool,name=MySQLtalk-ds 2008-11-14 09:54:52,989 DEBUG [org.jboss.resource.connectionmanager.JBossManagedConnectionPool] Starting jboss.jca:service=ManagedConnectionPool,name=MySQLtalk-ds 2008-11-14 09:54:53,020 DEBUG [org.jboss.resource.connectionmanager.JBossManagedConnectionPool] Started jboss.jca:service=ManagedConnectionPool,name=MySQLtalk-ds 2008-11-14 09:54:53,020 DEBUG [org.jboss.system.ServiceController] Starting dependent components for: jboss.jca:service=ManagedConnectionPool,name=MySQLtalk-ds dependent components: [ObjectName: jboss.jca:service=LocalTxCM,name=MySQLtalk-ds State: CREATED I Depend On: jboss.jca:service=ManagedConnectionPool,name=MySQLtalk-ds jboss.jca:service=CachedConnectionManager jboss:service=TransactionManager Depends On Me: jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds ] 2008-11-14 09:54:53,020 DEBUG [org.jboss.system.ServiceController] starting service jboss.jca:service=LocalTxCM,name=MySQLtalk-ds 2008-11-14 09:54:53,020 DEBUG [org.jboss.resource.connectionmanager.TxConnectionManager] Starting jboss.jca:service=LocalTxCM,name=MySQLtalk-ds 2008-11-14 09:54:53,020 DEBUG [org.jboss.resource.connectionmanager.TxConnectionManager] Started jboss.jca:service=LocalTxCM,name=MySQLtalk-ds 2008-11-14 09:54:53,020 DEBUG [org.jboss.system.ServiceController] Starting dependent components for: jboss.jca:service=LocalTxCM,name=MySQLtalk-ds dependent components: [ObjectName: jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds State: CREATED I Depend On: jboss.jca:service=LocalTxCM,name=MySQLtalk-ds ] 2008-11-14 09:54:53,020 DEBUG [org.jboss.system.ServiceController] starting service jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds 2008-11-14 09:54:53,020 DEBUG [org.jboss.resource.adapter.jdbc.remote.WrapperDataSourceService] Starting jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds 2008-11-14 09:54:53,036 DEBUG [org.jboss.resource.connectionmanager.ConnectionFactoryBindingService] Binding object 'org.jboss.resource.adapter.jdbc.WrapperDataSource@396c7' into JNDI at 'java:MySQLtalk-ds' 2008-11-14 09:54:53,036 INFO [org.jboss.resource.connectionmanager.ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds' to JNDI name 'java:MySQLtalk-ds' 2008-11-14 09:54:53,051 DEBUG [org.jboss.resource.adapter.jdbc.remote.WrapperDataSourceService] Started jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds 2008-11-14 09:54:53,051 DEBUG [org.jboss.system.ServiceController] Starting dependent components for: jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds dependent components: [] 2008-11-14 09:54:53,051 DEBUG [org.jboss.system.ServiceController] starting service jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds 2008-11-14 09:54:53,051 DEBUG [org.jboss.system.ServiceController] Ignoring start request for service: jboss.jca:service=DataSourceBinding,name=MySQLtalk-ds 2008-11-14 09:54:53,067 DEBUG [org.jboss.deployment.MainDeployer] End deployment start on package: MySQLtalk-ds.xml 2008-11-14 09:54:53,067 DEBUG [org.jboss.deployment.MainDeployer] Deployed package: file:/C:/jboss/jboss-4.2.0.GA/server/default/deploy/MySQLtalk-ds.xml 2008-11-14 09:54:53,067 DEBUG [org.jboss.deployment.scanner.URLDeploymentScanner] Watch URL for: file:/C:/jboss/jboss-4.2.0.GA/server/default/deploy/MySQLtalk-ds.xml -> file:/C:/jboss/jboss-4.2.0.GA/server/default/deploy/MySQLtalk-ds.xml ein auszug aus meiner log die mich überzeugt das meine datasource deployed wird (wobei ich es nich weiß sonst müsste ich hier nich so viele dumme fragen stellen). MfG the_mario P.S.:Die leerstellen zwischen My uns SQL sind vom einfügen. im original sind die nich drin Bearbeitet 14. November 2008 von the_mario Zitieren
kein-tee Geschrieben 14. November 2008 Geschrieben 14. November 2008 Hm, ok, stimmt. An welcher Stelle wird die Exception zum ersten mal geworfen? Zumindest weist es darauf hin [1], dass irgendetwas mit deinen Entities nicht stimmt ... [1] Hibernate Forum Gruß Zitieren
the_mario Geschrieben 14. November 2008 Autor Geschrieben 14. November 2008 Daran hab ich auch schon gedacht. Bin allerdings nich in der Lage einen/meinen Fehler zu entdecken. Ich hab drei entitys und eine normale klasse, weil davon keine tabelle angelegt werden soll sondern nur die DB dinge regeln soll zb. persist oder so sachen halt. (Ich bitte um verständnis für dumme fehler. bin noch nich lange im geschäft und schon garnich mit jboss und hibernate) ich möchte niemanden belästigen und weiß nich wieviel bock und zeit ihr habt, aber ich werd euch ma meine entitys und die eine klasse hinterlegen. die einzelne klasse Login.java : package de.talkbackend; import java.io.Serializable; import java.util.Vector; import javax.jws.WebMethod; import javax.persistence.EntityManager; import javax.persistence.Query; import javax.persistence.PersistenceContext; /** * * @author swepraktikant */ public class Login implements Serializable { // //Attributes // //@Id private Long id; private Person currrent = new Person(); @PersistenceContext private EntityManager em; // //Konstruktor // public Login(Person p) { this.currrent = p; this.id = currrent.getId(); } protected Login() { } // ///////////////Geter, Seter///////////////////////////////////////////////// // public Long getId() { return id; } public void setId(Long id) { this.id = id; } public Person getCurrent(){ return currrent; } ///////////////Methoden auf Personen//////////////////////////////////////// // //Auswählen einer oder mehrer Personen aus der DB anhand des Nick //oder der id in einem Vector<Person> // public Vector<Person> selectPerson(String Nick, long id) { Vector<Person> p = new Vector<Person>(); try { Query q = em.createQuery("from Personen where nick=:n OR id=:ID"); q.setParameter("n", Nick); q.setParameter("ID", id); for (int i = 0; i < q.getResultList().size(); i++) { p.add(i, ((Person) q.getResultList().get(i))); } } catch (Exception ex) { System.out.println(ex.getMessage() + "\n\n" + ex.getLocalizedMessage() + "\n\n"); ex.printStackTrace(); return new Vector<Person>(); } return p; } // //Schreibt aktualisierte daten einer person in die DB // @WebMethod public boolean updatePerson() { if (selectPerson(currrent.getNick(), currrent.getId()).size() != 0) { Person toUpdate = (Person) selectPerson(currrent.getNick(), currrent.getId()).firstElement(); toUpdate = this.currrent; em.merge(toUpdate); return true; } else { return false; } } // //Entfernen eines Accounts/Person aus der DB // public void deletePerson() { Query q = em.createQuery("delete from Relationen where FK_Person1=:cur" + " OR FK_Person2=cur"); q.setParameter("cur", this.currrent.getId()); q = em.createQuery("delete from Person where id=:cur_id"); q.setParameter("cur_id", this.currrent.getId()); } // ///////////////Metoden auf Relationen/////////////////////////////////////// // //Neue Relation erzeugen und in die DB schreiben // public boolean addRelation(Person perso) { //Um unbefugte freundschaften zu verhindern wird aus der einladungslst //der aktuellen person nachgeschaut ob eine anfrage der anderen Prson //vorliegt if (this.currrent.getEinladung().contains(perso)) { Query q = em.createQuery("from Relationen where" + " (FK_Person1=:P1 AND FK_Person2=:P2) " + "OR (FK_Person1=:P2 AND FK_Person2=:P1)"); q.setParameter("P1", this.currrent.getId()); q.setParameter("P2", perso.getId()); if (q.getResultList().size() == 0) { em.persist(new Relation(perso, this.currrent)); return true; } else { return false; } } else { return false; } } // //fügt die anfarage einer relation in die einladungslst einer anderen person //ein // public boolean askForRelation(Person p) { Vector<Person> in = p.getEinladung(); for (int i = 0; i < p.getEinladung().size(); i++) { if (p.getEinladung().get(i).equals(currrent)) { return false; } } in.add(this.currrent); p.setEinladung(in); return true; } // //Wählen einer Relation aus der DB um eine Unterhaltung zu eröffnen //gibt eine Relation zurück // public Relation selectRelation(Person perso) { Relation r; try { Query q = em.createQuery("from Relation where (FK_Person1=:p1" + " AND FK_Person2=:p2)" + " OR (FK_Person1=:p2 AND" + " FK_Person2=:p1)"); q.setParameter("p1", perso.getId()); q.setParameter("p2", this.currrent.getId()); r = ((Relation) q.getResultList().get(0)); } catch (Exception ex) { System.out.println(ex.getMessage() + "\n\n" + ex.getLocalizedMessage() + "\n\n"); ex.printStackTrace(); return (new Relation(new Person(), new Person())); } return r; } // //Gibt in einem Person-Vector die kontakliste von current zurück // public Vector<Person> listAllMy() { Vector<Person> fship = new Vector<Person>(); Query q = em.createQuery("from Relationen where FK_Person1=:cur_id"); q.setParameter("cur_id", this.currrent.getId()); for (int i = 0; i < q.getResultList().size(); i++) { Relation r = (Relation) q.getResultList().get(i); fship.add((Person) r.getPerson2()); } q = em.createQuery("from Relationen where FK_Person2=:cur_id"); q.setParameter("cur_id", this.currrent.getId()); for (int i = 0; i < q.getResultList().size(); i++) { Relation r = (Relation) q.getResultList().get(i); fship.add((Person) r.getPerson1()); } return fship; } // //Eine Relation aus der DB entfernen anhand der beiden Personen // public boolean deleteRelation(Person perso, Person cur) { if (cur.equals(cur)) { try { Query q = em.createQuery("delete from Relation where" + " FK_Person1=:p1 OR FK_Person2=:p2"); q.setParameter("p1", cur); q.setParameter("p2", cur); } catch (Exception ex) { System.out.println(ex.getMessage() + "\n\n" + ex.getLocalizedMessage() + "\n\n"); ex.printStackTrace(); return false; } return true; } else { return false; } } // ///////////////Methoden auf Unterhaltungen////////////////////////////////// // //Hinterlegt eine Unterhaltung in der DB. da jede Relation höchstens eine //Unterhaltung speichern soll wird geprüf ein bereits eine existitert //wenn ja wird diese mit einem neuen inhalt überschrieben ansonsten neu //angelegt // public void backUpConversation(Unterhaltung toBackUp) { Query q = em.createQuery("from Unterhaltung where FK_Relation=:r"); q.setParameter("r", toBackUp.getFK_Relation()); if (q.getResultList().size() == 0) { Unterhaltung u = ((Unterhaltung) q.getSingleResult()); u.setGespraech(toBackUp.getGespraech()); em.merge(u); } else { em.persist(toBackUp); } } // //Sucht die Unterhaltung eine Relation und gibt sie zurück // public Unterhaltung selectConversation(Relation r) { Query q = em.createQuery("from Unterhaltung where FK_Relation=:r"); q.setParameter("r", r); if (q.getResultList().size() != 0) { return ((Unterhaltung) q.getSingleResult()); } else { return (new Unterhaltung(new Relation(new Person(), new Person()))); } } // //setzt einen eintrag in die gespräch-string-liste. //ein eintrag enthält jeweils name und // public void setEintrag(Unterhaltung u, String text) { String[][] eintrag = new String[1][1]; eintrag[0][0] = this.currrent.getNick(); eintrag[0][1] = text; u.getGespraech().add(eintrag); } // //Entfernt eine in der DB hinterlegte Unterhaltung // public boolean deleteConversation(Unterhaltung u) { if (u.getFK_Relation().getPerson1().equals(currrent) || u.getFK_Relation().getPerson2().equals(currrent)) { Query q = em.createQuery("delete from Unterhaltung where " + "FK_Relation=:rel_id"); q.setParameter("rel_id", u.getFK_Relation().getId()); return true; } else { return false; } } // ///////////////Ende///////////////////////////////////////////////////////// } Zitieren
the_mario Geschrieben 14. November 2008 Autor Geschrieben 14. November 2008 Entity Person.java : package de.talkbackend; import java.io.Serializable; import java.util.Vector; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.OneToMany; import javax.persistence.OneToOne; import javax.persistence.Table; /** * * @author swepraktikant */ @Table @Entity public class Person implements Serializable { // //Attribute // private static final long serialVersionUID = 1L; private Long id = -1L; private String name = ""; private String vorname = ""; private String nick = ""; protected int pass; private boolean loginFlag = false; private long sessionKey; private Vector<Person> einladung = new Vector<Person>(); private Relation relation; // //Geter, Seter // public void setId(Long id) { this.id = id; } @Id @GeneratedValue(strategy = GenerationType.AUTO) public Long getId() { return id; } public void setName(String toSet) { this.name = toSet; } public String getName() { return name; } public void setVorname(String toSet) { this.vorname = toSet; } public String getVorname() { return vorname; } public void setNick(String toSet){ this.nick = toSet; } public String getNick(){ return this.nick; } /* * das pass wird als int gespeichert sollte aber als String eingegeben * werden das int kommt zu stande da es sich hierbei im den passwort hash * gespeichert werden sollte * * @param int * * @return void */ public void setPass(int toSet) { this.pass = toSet; } /* * getPass setzt ausschließlich einen int hash als passwort * gehasht erden muss der string vorher * eine prüf-fkt befindet sich in der klasse Login * diese setzt auch gleich die loginFlag auf tru wenn das passwort stimmt * und weist einen sessionKey zu * * @param int pass * * @return void */ public int getPass() { return pass; } public void setLoginFlag(boolean toSet){ this.loginFlag = toSet; } public boolean getLoginFlag(){ return loginFlag; } protected void setSessionKey(long toSet){ this.sessionKey = toSet; } public long getSessionKey(){ return sessionKey; } /* * Es muss dringend geprüft werden ob eine Person sich schon in der lsd * befindet bevor dieser seter ausgefüht wird * * @param Vector<Person> p * * @return void */ public void setEinladung(Vector<Person> p){ this.einladung = p; } @OneToMany public Vector<Person> getEinladung(){ return einladung; } // //Methoden // @Override public int hashCode() { int hash = 0; hash += (id != null ? id.hashCode() : 0); return hash; } @Override public boolean equals(Object object) { // TODO: Warning - this method won't work in the case the id fields are not set if (!(object instanceof Person)) { return false; } Person other = (Person) object; if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) { return false; } return true; } @Override public String toString() { return "de.talkbackend.Person[id=" + id + "]"; } @OneToOne public Relation getRelation() { return relation; } public void setRelation(Relation relation) { this.relation = relation; } } Entity Relation.java : package de.talkbackend; import java.io.Serializable; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.OneToOne; import javax.persistence.Table; /** * * @author swepraktikant */ @Table @Entity public class Relation implements Serializable { // //Attribute // private static final long serialVersionUID = 1L; private Long id = -1L; private Person FK_Person1; private Person FK_Person2; // //Konstrunktor // protected Relation (){} public Relation (Person perso1, Person perso2){ this.FK_Person1 = perso1; this.FK_Person2 = perso2; } // //Geter, Seter // public void setId(Long id) { this.id = id; } @Id @GeneratedValue(strategy = GenerationType.AUTO) public Long getId() { return id; } @OneToOne public Person getPerson1(){ return FK_Person1; } @OneToOne public Person getPerson2(){ return FK_Person2; } // //Methoden // @Override public int hashCode() { int hash = 0; hash += (id != null ? id.hashCode() : 0); return hash; } @Override public boolean equals(Object object) { // TODO: Warning - this method won't work in the case the id fields are not set if (!(object instanceof Relation)) { return false; } Relation other = (Relation) object; if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) { return false; } return true; } @Override public String toString() { return "de.talkbackend.Relation[id=" + id + "]"; } } und Entity Unterhaltung.java : package de.talkbackend; import java.io.Serializable; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.OneToOne; import javax.persistence.Table; /** * * @author swepraktikant */ @Table @Entity public class Relation implements Serializable { // //Attribute // private static final long serialVersionUID = 1L; private Long id = -1L; private Person FK_Person1; private Person FK_Person2; // //Konstrunktor // protected Relation (){} public Relation (Person perso1, Person perso2){ this.FK_Person1 = perso1; this.FK_Person2 = perso2; } // //Geter, Seter // public void setId(Long id) { this.id = id; } @Id @GeneratedValue(strategy = GenerationType.AUTO) public Long getId() { return id; } @OneToOne public Person getPerson1(){ return FK_Person1; } @OneToOne public Person getPerson2(){ return FK_Person2; } // //Methoden // @Override public int hashCode() { int hash = 0; hash += (id != null ? id.hashCode() : 0); return hash; } @Override public boolean equals(Object object) { // TODO: Warning - this method won't work in the case the id fields are not set if (!(object instanceof Relation)) { return false; } Relation other = (Relation) object; if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) { return false; } return true; } @Override public String toString() { return "de.talkbackend.Relation[id=" + id + "]"; } } MfG the_mario Zitieren
the_mario Geschrieben 17. November 2008 Autor Geschrieben 17. November 2008 (bearbeitet) hi, vielen dank für die geduld. mein prob lag tatsächlich an meinen entitys (die hatten wohl nich die richtige form um von soap versendet zu werden). deshalb hab ich das projekt neu begonnen. dabei hat sich das gelöst. nunja jetzt legt der jboss bzw. hibernate einfach keine tabellen an wenn ich ein objekt persisten(also in die DB schreiben) möchte. bei jedem start schmeist jboss auch, ganz unabhängig davon was deployd is und was nich, ne exception weil er irgend ne temporäre tabelle nich anlegen kann. 2008-11-17 08:23:46,903 DEBUG [org.jboss.mq.pm.jdbc2.PersistenceManager] Starting jboss.mq:service=PersistenceManager 2008-11-17 08:23:46,903 DEBUG [org.jboss.mq.pm.jdbc2.PersistenceManager] Creating Schema 2008-11-17 08:23:46,903 DEBUG [org.jboss.mq.pm.jdbc2.PersistenceManager] Could not create table with SQL: CREATE CACHED TABLE JMS_MESSAGES ( MESSAGEID INTEGER NOT NULL, DESTINATION VARCHAR(255) NOT NULL, TXID INTEGER, TXOP CHAR(1), MESSAGEBLOB OBJECT, PRIMARY KEY (MESSAGEID, DESTINATION) ) java.sql.SQLException: Table already exists: JMS_MESSAGES in statement [CREATE CACHED TABLE JMS_MESSAGES] at org.hsqldb.jdbc.Util.throwError(Unknown Source) at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source) at org.jboss.resource.adapter.jdbc.CachedPreparedStatement.executeUpdate(CachedPreparedStatement.java:95) at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:251) at org.jboss.mq.pm.jdbc2.PersistenceManager.createSchema(PersistenceManager.java:280) at org.jboss.mq.pm.jdbc2.PersistenceManager.startService(PersistenceManager.java:1796) at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289) at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245) at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978) at $Proxy0.start(Unknown Source) at org.jboss.system.ServiceController.start(ServiceController.java:417) at org.jboss.system.ServiceController.start(ServiceController.java:435) at org.jboss.system.ServiceController.start(ServiceController.java:435) at org.jboss.system.ServiceController.start(ServiceController.java:435) at org.jboss.system.ServiceController.start(ServiceController.java:435) at org.jboss.system.ServiceController.start(ServiceController.java:435) at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy4.start(Unknown Source) at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302) 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:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy42.start(Unknown Source) at org.jboss.deployment.XSLSubDeployer.start(XSLSubDeployer.java:197) at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy9.deploy(Unknown Source) at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421) at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263) at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:336) at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289) at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245) at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978) at $Proxy0.start(Unknown Source) at org.jboss.system.ServiceController.start(ServiceController.java:417) at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy4.start(Unknown Source) at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302) at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:766) 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:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy5.deploy(Unknown Source) at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482) at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362) at org.jboss.Main.boot(Main.java:200) at org.jboss.Main$1.run(Main.java:508) at java.lang.Thread.run(Thread.java:595) Bearbeitet 17. November 2008 von the_mario Zitieren
the_mario Geschrieben 17. November 2008 Autor Geschrieben 17. November 2008 2008-11-17 08:23:46,934 DEBUG [org.jboss.mq.pm.jdbc2.PersistenceManager] Could not create table with SQL: CREATE CACHED TABLE JMS_TRANSACTIONS ( TXID INTEGER, PRIMARY KEY (TXID) ) java.sql.SQLException: Table already exists: JMS_TRANSACTIONS in statement [CREATE CACHED TABLE JMS_TRANSACTIONS] at org.hsqldb.jdbc.Util.throwError(Unknown Source) at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source) at org.jboss.resource.adapter.jdbc.CachedPreparedStatement.executeUpdate(CachedPreparedStatement.java:95) at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:251) at org.jboss.mq.pm.jdbc2.PersistenceManager.createSchema(PersistenceManager.java:355) at org.jboss.mq.pm.jdbc2.PersistenceManager.startService(PersistenceManager.java:1796) at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289) at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245) at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978) at $Proxy0.start(Unknown Source) at org.jboss.system.ServiceController.start(ServiceController.java:417) at org.jboss.system.ServiceController.start(ServiceController.java:435) at org.jboss.system.ServiceController.start(ServiceController.java:435) at org.jboss.system.ServiceController.start(ServiceController.java:435) at org.jboss.system.ServiceController.start(ServiceController.java:435) at org.jboss.system.ServiceController.start(ServiceController.java:435) at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy4.start(Unknown Source) at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302) 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:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy42.start(Unknown Source) at org.jboss.deployment.XSLSubDeployer.start(XSLSubDeployer.java:197) at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy9.deploy(Unknown Source) at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421) at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263) at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:336) at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289) at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245) at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978) at $Proxy0.start(Unknown Source) at org.jboss.system.ServiceController.start(ServiceController.java:417) at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy4.start(Unknown Source) at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302) at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:766) 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:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy5.deploy(Unknown Source) at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482) at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362) at org.jboss.Main.boot(Main.java:200) at org.jboss.Main$1.run(Main.java:508) at java.lang.Thread.run(Thread.java:595) das sind die fehlermeldungen die der schmeist, wobei ich nich weiß wie ich die hätte verursachen können. naja wenn da jemand weiter weiss wär super. danke und MfG the_mario Zitieren
kingofbrain Geschrieben 17. November 2008 Geschrieben 17. November 2008 Servus, da muss man ein bisschen genauer hinschauen. Der Stacktrace wird auf DEBUG gelogged und dient lediglich der Information. Für JMS Messaging im JBoss werden Datenbanken verwendet, um die Nachrichten und Konfigurationseinstellungen zu speichern. In der Standardkonfiguration werden die bei jedem Start versucht, anzulegen. Und das klappt nicht, wenn sie schon da sind. Also hier hast Du keinen Stress, das ist normal. Peter Zitieren
the_mario Geschrieben 17. November 2008 Autor Geschrieben 17. November 2008 Vielen dank, das ist einerseits beruhigend, weil ich dann kein prob mit dem JBoss habe. Andererseits war das der einzige anhaltspunkt den ich hatte weshalb ich objekte der klassen (die serverseitig verwende) nicht "persisten"(also in die DB schreiben) kann. Das prob is das garnich erst tabellen angelegt werden. also is mit persisten auch nich. MfG the_mario Zitieren
kingofbrain Geschrieben 17. November 2008 Geschrieben 17. November 2008 Servus, eine bitte: paste nicht immer komplette Logfiles oder Dateien. Die liest eh keiner. Versuche, den Fehler mit dem kleinstmöglichen Beispiel zu illustrieren. Ist für Dich mehr Arbeit, aber es werden sich mehr Leute berufen fühlen, Dir zu helfen. Jetzt zum Thema: warum soll Hibernate denn die Tabellen anlegen und weiß es das auch? Hat du die entsprechenden Hibernate properties gesetzt? Hat der Benutzer die Rechte, Tabellen anzulegen? Ich habe Dein Log nicht gelesen (s.o.), deshalb habe ich außer dem DEBUG-Stacktrace keinen Fehler gesehen. Schau nochmal, dass Du die Informationen zusammendampfen kannst, dann wird Dir wahrscheinlich eher geholfen. Peter Zitieren
the_mario Geschrieben 17. November 2008 Autor Geschrieben 17. November 2008 (bearbeitet) OK, erstma: danke für den tipp, bin nich so oft und noch nich so lange in foren unterwegs und vor allem danke das du mir trotzdem hilfst und jetzt komm ich auch zum thema. ich hab nur einen nutzer auf meiner test datenbank und der darf alles machen. die persistence.xml zeigt auf eine datasource.xml die die zugangsdaten zu meiner mysql-datenbank hat und mittlerweile hab ich die "tabellenanlge-option" <property name="hibernate.hbm2ddl.auto" value="create-drop"/> auch so gesetzt, dass duch das create-drop ein anlegen der tabellen erzwungen werden müsste. Das tut es aber nich. aber vllt. auch ma mein szenario. als übung zu hibernate möchte ich sowas wie nen instant-messanger bauen. das wollte ich so realisieren (ob das clever is weiß ich nich proggen tu aich auch noch nich so lang) das meine serverseite die entityklassen person und conversation bekommt eine person kann man sich auch in der client holen wenn man die anmeldedaten hat und dann damit entsprechende operationen auf dem server ausführen lassen wie zb freundschaftseinladungen machen, dann bekommt ne ander person aus der datenbank in ihre freundschafts anfrage liste ne neue person. naja ich bin noch ganz am anfang und möchte versuchen eine person in die datenbak zu schreiben dazuhol ich mir vom client die infos vom nutzer (name, nickn passwort,...), erzeuge damit auf dem server ein objekt der entity-klassen person, persiste sie und gebe sie dem client. Bei der letzten aktion, also dem zurückgeben, kommt dann die meldung: 2008-11-17 15:51:43,452 ERROR [org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS] SOAP request exception javax.ejb.EJBException: java.lang.IllegalArgumentException: Unknown entity: backend.Person_entity hoffe das is alles einigermaßen gut und nich zu lang beschrieben. wenn was an meinem "frage/bescheibungs-stil" nich gut sein sollte bitte ich um konstruktive kritik möchte ja noch häufiger sachen fragen und da will ich die leute die sich die mühe machen mir zu antworten nich auch noch mit sowas nerven. vielen dank und MfG the_mario Bearbeitet 17. November 2008 von the_mario Zitieren
kingofbrain Geschrieben 18. November 2008 Geschrieben 18. November 2008 Servus, mir kommt es so vor, als wolltest Du gleich alles auf einmal machen. Web Services, Hibernate (natürlich per JPA auf dem JBoss) und das ganze ohne fundierte Grundkenntnisse. Mein Tipp: fang langsam an. Entwickel erst mal ein kleines Projekt mit Hibernate (ohne JPA, hier gibts noch mehr Doku ) und füge über eine einfache main-Klasse Daten in eine Datenbank ein und lese sie wieder. Du kannst ja das selbe Datenmodell haben wie bei Deiner Anwendung. Dann schlägst Du Dich am Anfang nämlich nicht mit Problemen rum, die nichts mit Dir zu tun haben. Allein der JBoss ist schon eine Wissenschaft für sich und kann einem am Anfang das Leben schwer machen. Dann baust Du das Schritt für Schritt aus. Zum Thema JPA: ich bin nicht sehr begeistert von der Spezifikation und entwickle deshalb meine Anwendungen nach Möglichkeit mit reinem Hibernate. Es ist wie schon bei früheren J2EE Spezifikationen. Das Gremium kann sich nicht auf ein Vorgehen bei einer bestimmten Frage einigen, da lässt man es einfach unspezifiziert und überlässt es damit dem Hersteller. Ergebnis: man meint, man könnte gegen eine spezifizierte Schnittstelle arbeiten und dann fehlt die Hälfte. Deshalb verwende (zumindest am Anfang, später solltest Du Dir ein eigenes Bild bilden) pures Hibernate. Schöne Grüße, Peter Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.