Hello,
I have a problem with my ReverseEngineeringStrategy. When I try to build the POJOs with the Hibernate-Tools, I get the error:
Code:
org.hibernate.console.HibernateConsoleRuntimeException: Could not create or find org.granitic.steinlaus.base.ModelReverseEngingeeringStrategy with one argument delegate constructor
java.lang.ClassNotFoundException: org.granitic.steinlaus.base.ModelReverseEngingeeringStrategy
java.lang.ClassNotFoundException: org.granitic.steinlaus.base.ModelReverseEngingeeringStrategy
My ReverseEngineeringStrategy:
Code:
package org.granitic.steinlaus.base;
import java.util.Properties;
import org.hibernate.cfg.reveng.DelegatingReverseEngineeringStrategy;
import org.hibernate.cfg.reveng.ReverseEngineeringStrategy;
import org.hibernate.cfg.reveng.TableIdentifier;
public class ModelReverseEngingeeringStrategy extends
DelegatingReverseEngineeringStrategy {
public ModelReverseEngingeeringStrategy(final ReverseEngineeringStrategy delegate) {
super(delegate);
}
/* (non-Javadoc)
* @see org.hibernate.cfg.reveng.DelegatingReverseEngineeringStrategy#columnToPropertyName(org.hibernate.cfg.reveng.TableIdentifier, java.lang.String)
*/
@Override
public String columnToPropertyName(TableIdentifier arg0, String arg1) {
if (arg1.equals("USER_CRE")) {
return "userCre";
} else if (arg1.equals("USER_UPD")) {
return "userUpd";
} else {
return super.columnToPropertyName(arg0, arg1);
}
}
/* (non-Javadoc)
* @see org.hibernate.cfg.reveng.DelegatingReverseEngineeringStrategy#getTableIdentifierProperties(org.hibernate.cfg.reveng.TableIdentifier)
*/
@Override
public Properties getTableIdentifierProperties(TableIdentifier arg0) {
System.out.println(arg0.getName());
return super.getTableIdentifierProperties(arg0);
}
}
I can't imagine why it doesn't work. I have searched a lot in this forum and in the JBoss forum, but havn't found any solution.
Any ideas?
I'm using Hibernate-Tools 3.2.0-beta6a.
Is it possible to add annotations to a method with a custom ReverseEngineeringStrategy?
Regards,
Christoph