Problema com Genesis

7 respostas
C
Galera, nao sei mais o que fazer... estou usando o Genesis e tenho esta classe:
@Form
public class Aluno implements Serializable {
    ...
    private Date datNascimento;
    // getters e setters
    ....
Daí fiz um Panel tipo assim:
public class painelCadastroAlunos extends javax.swing.JPanel {
    SwingBinder binder = new SwingBinder(this, new obj.Aluno());
    public painelCadastroAlunos() {
        initComponents();
        DateFormatter formatter = new DateFormatter();
        binder.registerConverter("datNascimento", new DateConverter());
        ...
    }
    private void initComponents() {
      ...
      jFormattedTextField1 = new javax.swing.JFormattedTextField();
      jFormattedTextField1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.DateFormatter()));
      jFormattedTextField1.setName("datNascimento");
      ..
    }
Implementei formatadores e conversores:
public class DateFormatter implements net.java.dev.genesis.text.Formatter{
    public String format(Object arg0) {
        SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
        if(arg0 != null){
            Date d = (Date)arg0;
            return formatter.format(d);
        }else
            return new String();
    }
}

public class DateConverter implements org.apache.commons.beanutils.Converter{
    public Object convert(Class arg0, Object arg1) {
        Date d = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
        String str = (String)arg1;
        return d;
    }
}
E deu um warning super estranho, fora que datNascimento está caindo como nula na classe:
WARNING: Field datNascimento in java.util.Date does not have an associated converter; perhaps new StartupHelper().initialize() hasn't been invoked?

7 Respostas

fantomas

Oi celsinnn,

Posso estar enganado mas acredito que vc tenha que executar StartupHelper().initialize() no seu sistema antes de qualquer coisa ref ao genesis. Ou seja, logo quando iniciar o sistema você executa esta parte.

[]'s

fantomas

Verifique este link https://genesis.dev.java.net/3.2/maven-site/pt-BR/startup.html

flws

C

Sim, eu estou fazendo isto. Veja:

public static void main(String[] args) {

                StartupHelper helper = new StartupHelper();
                helper.addConverter(DateConverter.class, new DateConverter());

                PersistenceUtil.currentEntityManager();
                ...
fantomas

Sim…mas e o método initialize??

public static void main(String[] args) {

                StartupHelper helper = new StartupHelper();

                helper.initialize() // <<----------------------------------<< AQUI

                helper.addConverter(DateConverter.class, new DateConverter());

                PersistenceUtil.currentEntityManager();
                ...

flws

C

Valeu cara, mas olha soh o que ele me deu de erro:

29/11/2009 22:53:06 net.java.dev.genesis.helpers.StartupHelper registerBeanUtilsBean INFO: Setting BeanUtilsBean instance 29/11/2009 22:53:06 net.java.dev.genesis.helpers.StartupHelper registerJXPathContextFactory INFO: Registering JXPathContextFactory class name 29/11/2009 22:53:06 net.java.dev.genesis.helpers.StartupHelper registerConverters INFO: Registering converters 29/11/2009 22:53:06 net.java.dev.genesis.helpers.StartupHelper registerFormatters INFO: Registering formatters 29/11/2009 22:53:06 net.java.dev.genesis.helpers.StartupHelper initialize INFO: Initialization started Exception in thread "ValidatorRulesLoader-Daemon" java.lang.NoClassDefFoundError: org/apache/commons/validator/ValidatorException at net.java.dev.genesis.helpers.StartupHelper$2.run(StartupHelper.java:212) Caused by: java.lang.ClassNotFoundException: org.apache.commons.validator.ValidatorException at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) ... 1 more 29/11/2009 22:53:06 net.java.dev.genesis.helpers.StartupHelper$1 run INFO: Noop command executed

Tentei adicionando o .jar jsf-api.jar que está na pasta "NetBeans 6.7.1\enterprise5\modules\ext"
Apareceu o pacote javax.faces.validator e tem ali uma classe ValidatorException.class. Continua dando erro!

Eu tenho no meu projeto uma classe DateFormatter que implementa net.java.dev.genesis.text.Formatter e
uma classe DateConverter que implementa org.apache.commons.beanutils.Converter

fantomas

Tem que ser a classe informada na exception, portanto vc precisa do jar que a contém.

Tente baixar um destes desta página http://www.jarfinder.com/index.php/java/info/org.apache.commons.validator.Validator

Se faltar mais alguma classe utilize o jarfinder para encontrar o jar correspondente http://www.jarfinder.com/

flws

C

Tenho que incomodar de novo… hehe!
Mas tou com dificuldade de lidar com esse Genesis.
Importei o JAR, ai faltou mais outro, achei e importei também.
Quando eu rodo a aplicação, dá nisso:

04/12/2009 11:31:01 net.java.dev.genesis.ui.ValidationUtils getInstance SEVERE: null java.net.MalformedURLException at java.net.URL.<init>(URL.java:601) at java.net.URL.<init>(URL.java:464) at java.net.URL.<init>(URL.java:413) at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:650) at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(XMLVersionDetector.java:186) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) at org.apache.commons.digester.Digester.parse(Digester.java:1562) at org.apache.commons.validator.ValidatorResources.<init>(ValidatorResources.java:156) at net.java.dev.genesis.ui.ValidationUtils.initResources(ValidationUtils.java:75) at net.java.dev.genesis.ui.ValidationUtils.<init>(ValidationUtils.java:48) at net.java.dev.genesis.ui.ValidationUtils.getInstance(ValidationUtils.java:55) at net.java.dev.genesis.helpers.StartupHelper$2.run(StartupHelper.java:212) Exception in thread "ValidatorRulesLoader-Daemon" java.lang.RuntimeException: java.net.MalformedURLException at net.java.dev.genesis.ui.ValidationUtils.getInstance(ValidationUtils.java:58) at net.java.dev.genesis.helpers.StartupHelper$2.run(StartupHelper.java:212) Caused by: java.net.MalformedURLException at java.net.URL.<init>(URL.java:601) at java.net.URL.<init>(URL.java:464) at java.net.URL.<init>(URL.java:413) at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:650) at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(XMLVersionDetector.java:186) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) at org.apache.commons.digester.Digester.parse(Digester.java:1562) at org.apache.commons.validator.ValidatorResources.<init>(ValidatorResources.java:156) at net.java.dev.genesis.ui.ValidationUtils.initResources(ValidationUtils.java:75) at net.java.dev.genesis.ui.ValidationUtils.<init>(ValidationUtils.java:48) at net.java.dev.genesis.ui.ValidationUtils.getInstance(ValidationUtils.java:55)

O que será isso? Algum campo nulo? Algum parametro?

Criado 24 de novembro de 2009
Ultima resposta 4 de dez. de 2009
Respostas 7
Participantes 2