On Mar 14, 2008, at 9:00 AM, Riccardo Cohen wrote:

> Hi
> I'm using resin 3.1.5 and the latest mysql jdbc driver.
> I try to build a minimal sample from scratch to be sure to  
> understand everything with entity ejbs.
>
> I found 2 problems I cannot understand :
>
> 1) database configuration
>
> This is my conf :
>  <database jndi-name="jdbc/adlhessian">
>    <driver>
>      <type>com.mysql.jdbc.Driver</type>
>      <url>jdbc:mysql://localhost/adlhessian</url>
>      <user>hessian</user>
>      <password>hessian</password>
>    </driver>
>    <prepared-statement-cache-size>8</prepared-statement-cache-size>
>    <max-connections>20</max-connections>
>    <max-idle-time>30s</max-idle-time>
>    <spy>true</spy>
>  </database>
>
> I get the error in finer log :
>
> com.caucho.config.ConfigException: 'url' is an unknown attribute of  
> 'com.mysql.jdbc.Driver'
> and the same for user and password. But it seems to work anyway !!  
> why this error while the docs seems to tell it is correct...

The logging has been changed to finest.  It's only being logged to  
avoid totally swallowing the error.

Some drivers have a setUrl method, which uses the value of the <url>  
directly.  So Resin is trying to find and set that method.  Since the  
getConnection also has a URL argument, it's optional.

> 2) ejb configuration
>
> I have one single entity ejb :
>
>
> But I continue to have the error =
>
> com.caucho.amber.AmberRuntimeException: 'adlejb.Ejbuser' with  
> classloader EnvironmentClassLoader[web-app:http://localhost:8000] is  
> an illegal instance class

This is much more complicated.  Amber does bytecode enhancement at the  
classloader level, so there are complicated timing issues.   
Specifically, if something loads the Ejbuser class before Amber has  
configured it, you'll get the non-enhanced class.

There might also be some cases where an error in generating the  
enhanced class might not get logged properly.  Does the log show any  
kind of error?  Also, is there a valid file in WEB-INF/work/pre-enhance?

-- Scott

>
>
> What does it mean ? I found no error, and tried to have a look at  
> mailinglist  archive with no success. I looked at the samples, but  
> found nothing really different...
>
> The crazy about this is that I built this simple app from another  
> simple app configured exactly the same manner, but the other does  
> not make any amber error ! I tried to rename everything several  
> times, but nothing seems to remove this error. I had the same  
> problem sometimes with resin 3.0 and in 2006 Rodrigo Westrupp  
> answered that I should work with resin 3.1.


>
>
> Thanks for any information (files attached)
>
> -- 
> Très cordialement,
>
> Riccardo Cohen
> -------------------------------------------
> Articque
> http://www.articque.com
> 149 av Général de Gaulle
> 37230 Fondettes - France
> tel : 02-47-49-90-49
> fax : 02-47-49-91-49
> package adlejb;
>
> import javax.persistence.Basic;
> import javax.persistence.Column;
> import javax.persistence.Entity;
> import javax.persistence.GeneratedValue;
> import javax.persistence.Id;
> import javax.persistence.Table;
>
> @Entity
> @Table(name="adluser")
> public class Ejbuser
> {
>  @Id @Column(name="adlid") @GeneratedValue int id;
>  @Basic @Column(name="adlfirstname") String firstname;
>  @Basic @Column(name="adlname") String name;
>  public int getId()
>  {
>    return id;
>  }
>  public void setId(int id)
>  {
>    this.id = id;
>  }
>  public String getFirstname()
>  {
>    return firstname;
>  }
>  public void setFirstname(String firstname)
>  {
>    this.firstname = firstname;
>  }
>  public String getName()
>  {
>    return name;
>  }
>  public void setName(String name)
>  {
>    this.name = name;
>  }
> }
> <persistence xmlns="http://java.sun.com/xml/ns/persistence";  
> version="1.0">
>  <persistence-unit name="Adlhessian">
>    <class>adlejb.Ejbuser</class>
>    <exclude-unlisted-classes />
>  </persistence-unit>
> </persistence>
> <web-app xmlns="http://caucho.com/ns/resin";>
>  <database jndi-name="jdbc/adlhessian">
>    <driver>
>      <type>com.mysql.jdbc.Driver</type>
>      <url>jdbc:mysql://localhost/adlhessian</url>
>      <init-param autoReconnect="true"/>
>      <init-param noDatetimeStringSync="true"/>
>      <init-param jdbcCompliantTruncation="false"/>
>      <user>hessian</user>
>      <password>hessian</password>
>    </driver>
>    <prepared-statement-cache-size>8</prepared-statement-cache-size>
>    <max-connections>20</max-connections>
>    <max-idle-time>30s</max-idle-time>
>    <spy>true</spy>
>  </database>
>  <ejb-server data-source="jdbc/adlhessian" create-database- 
> schema="false"/>
>  <servlet servlet-name="adlservice" servlet- 
> class="adlhessian.Adlservice"/>
>  <servlet-mapping url-pattern="/adlservice/*" servlet- 
> name="adlservice"/>
> </web-app>
> _______________________________________________
> resin-interest mailing list
> resin-interest@caucho.com
> http://maillist.caucho.com/mailman/listinfo/resin-interest



_______________________________________________
resin-interest mailing list
resin-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/resin-interest

Reply via email to