3 Replies Latest reply on Oct 24, 2003 4:14 AM by giusalex

    Some Configuration Problems with jboss 3.2.2

    giusalex

      We are two newbie and we're using for our project :
      - jboss 3.2.2
      - jbuilder 9
      - MySql

      Until now we've used jboss 3.2.1 but recently we have downloaded and installed jboss 3.2.2!

      We've resolved many problem but there is yet something that doesn't works with configuration:

      1) when we start jboss 3.2.2 under jbuilder9 (with Voyager JBoss AppServer Open Tool v.2.5) we have this info:

      11:15:54,592 INFO [Engine] StandardHost[localhost]: MAPPING configuration error for request URI /


      this message not stop the execution of jboss, but we would know from what kind of settings it depends;

      2) To use MySql ,we have setted properly these files:
      - JBOSS_HOME/server/default/deploy/mysql-ds.xml
      - JBOSS_HOME/server/default/conf/standardjaws.xml
      - JBOSS_HOME/server/default/conf/standardjbosscmp-jdbc.xml
      - JBOSS_HOME/server/default/deploy/jms/mysql-jdbc2-service.xml
      and we have removed:
      - JBOSS_HOME/server/default/deploy/hsqldb-ds.xml
      - JBOSS_HOME/server/default/deploy/jms/hsqldb-jdbc2-service.xml

      And all seems ok! But when we try to write in a table (User) using an Entity EJB CMP (UserEJB) and its client we have this error:

      java.sql.SQLException: Syntax error or access violation, message from server: "You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'User(id, name, surname, address, tel_num, is_sender, pwd, city)"
      at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1651)
      at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:889)
      at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:956)
      at com.mysql.jdbc.Connection.execSQL(Connection.java:1874)
      at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1700)
      at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1569)
      at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:321)
      at org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractCreateCommand.executeInsert(JDBCAbstractCreateCommand.java:334)
      at org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractCreateCommand.performInsert(JDBCAbstractCreateCommand.java:295)
      at org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractCreateCommand.execute(JDBCAbstractCreateCommand.java:144)
      at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.createEntity(JDBCStoreManager.java:518)
      at org.jboss.ejb.plugins.CMPPersistenceManager.createEntity(CMPPersistenceManager.java:208)
      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.createEntity(CachedConnectionInterceptor.java:269)
      at org.jboss.ejb.EntityContainer.createLocalHome(EntityContainer.java:580)
      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:324)
      at org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome(EntityContainer.java:1042)
      at org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:88)
      at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome(EntitySynchronizationInterceptor.java:197)
      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invokeHome(CachedConnectionInterceptor.java:214)
      at org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:88)
      at org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInterceptor.java:89)
      at org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:61)
      at org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome(EntityCreationInterceptor.java:28)
      at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:88)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:267)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:98)
      at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:92)
      at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:120)
      at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyFactoryFinderInterceptor.java:93)
      at org.jboss.ejb.EntityContainer.internalInvokeHome(EntityContainer.java:484)
      at org.jboss.ejb.Container.invoke(Container.java:720)
      at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invokeHome(BaseLocalProxyFactory.java:293)
      at org.jboss.ejb.plugins.local.LocalHomeProxy.invoke(LocalHomeProxy.java:110)
      at $Proxy45.create(Unknown Source)
      at tet_1beta.InvAdminBean.parcelInfo(InvAdminBean.java:55)
      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:324)
      at org.jboss.ejb.StatefulSessionContainer$ContainerInterceptor.invoke(StatefulSessionContainer.java:928)
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:118)
      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:185)
      at org.jboss.ejb.plugins.StatefulSessionInstanceInterceptor.invoke(StatefulSessionInstanceInterceptor.java:269)
      at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:84)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:267)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:128)
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
      at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
      at org.jboss.ejb.StatefulSessionContainer.internalInvoke(StatefulSessionContainer.java:416)
      at org.jboss.ejb.Container.invoke(Container.java:700)
      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:324)
      at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
      at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:367)
      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:324)
      at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
      at sun.rmi.transport.Transport$1.run(Transport.java:148)
      at java.security.AccessController.doPrivileged(Native Method)
      at sun.rmi.transport.Transport.serviceCall(Transport.java:144)
      at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
      at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
      at java.lang.Thread.run(Thread.java:536)

      Is this a problem of mysql? And why this operation work on jboss 3.2.1 and not in jboss3.2.2 ? Is it a problem of configuration?




      Please answer us!

      thank you in advance!

        • 1. Re: Some Configuration Problems with jboss 3.2.2
          nicfournier

          I have the same problem. It seems MySQL does not like when there is no space between table name and '('.

          I used mysql log to dump what is received by mysql and what I get is:

          CREATE TABLE quote(uid INTEGER NOT NULL auto_increment, creationTime BIGINT NOT NULL, status INTEGER NOT NULL, carFare INTEGER, hotelFare INTEGER, flightFare INTEGER, connectorRfq INTEGER, rfq INTEGER, passengerRecord INTEGER, CONSTRAINT pk_quote PRIMARY KEY (uid))

          If I type this in Mysql console, I get an error (as jboss does) but if I add a space between quote and '(' like this:

          CREATE TABLE quote (uid INTEGER NOT NULL auto_increment, creationTime BIGINT NOT NULL, status INTEGER NOT NULL, carFare INTEGER, hotelFare INTEGER, flightFare INTEGER, connectorRfq INTEGER, rfq INTEGER, passengerRecord INTEGER, CONSTRAINT pk_quote PRIMARY KEY (uid))

          The query is executed fine.

          Can someone help me find what I can do about this ???

          Thanks a lot.

          Nick.

          • 2. Re: Some Configuration Problems with jboss 3.2.2
            nicfournier

            I found the problem, it is not jboss, it is because the table name is a reserved keyword.

            In my case, the table name was quote which seems to be a mysql function. When the statement was "CREATE TABLE quote (" it was ok but when jboss 3.2.2 removed the space it was transformed into a function call like this "CREATE TABLE quote(".

            Sorry, my fault!

            • 3. Re: Some Configuration Problems with jboss 3.2.2
              giusalex

              The table name "User" is a reserved keyword!!!!!
              Now it works all ok. It should depend from
              mysql-jdbc2-service.xml that is new in jboss3.2.2.
              Tank you very much nicfournier