Zum Inhalt springen

jboss/hibernate exception


Empfohlene Beiträge

Geschrieben

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:

Geschrieben
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)

Geschrieben

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

Geschrieben (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 von the_mario
Geschrieben (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 von kein-tee
Geschrieben

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:".

Geschrieben

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ß

Geschrieben

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.

Geschrieben

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ß

Geschrieben (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 von the_mario
Geschrieben

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/////////////////////////////////////////////////////////

    }

Geschrieben

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

Geschrieben (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 von the_mario
Geschrieben

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

Geschrieben

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

Geschrieben

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

Geschrieben

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

Geschrieben (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 von the_mario
Geschrieben

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

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...