toString () в Grails Java Доменный класс Причины - PullRequest
2 голосов
/ 23 июня 2009

По умолчанию, grails, похоже, возвращает <class name>:<id> для toString () объекта домена Java. Это совсем не то, что я хочу, конечно, поэтому я попытался @Override toString (), чтобы вернуть то, что я хочу. Когда я попытался использовать Grails Generate-All Tagtype, я получил следующую ошибку:

java.lang.LinkageError: loader constraint violation: loader (instance of <bootloader>) previously initiated loading for a differen
t type with name "org/w3c/dom/NamedNodeMap"

Мой код ниже. Любая помощь будет принята с благодарностью.

@Entity
@Table(name = "tagtype", catalog = "tigger")
@SuppressWarnings("serial")
public class Tagtype implements Serializable {

    /**
     * Attribute id.
     */
    private Integer id;

    /**
     * Attribute tagtype.
     */
    private String tagtype;

    /**
     * Attribute regexpression
     */
     private Regexpression regexpression;   

 . . .  

  @Override public String toString() {
    StringBuilder result = new StringBuilder();

    result.append(this.tagtype);

    return result.toString();
  }

}

1 Ответ

1 голос
/ 23 июня 2009

Я переопределил toString() в классах домена Grails без проблем, так что это не может быть причиной. Этот блог предполагает, что это может быть результатом конфликта имен, либо временного (вы пробовали запустить "grails clean"?), Либо, возможно, имя вашего класса Tagtype сталкивается с некоторыми внутренностями Grails.

Еще одна вещь, которую вы можете попробовать, - это использовать разные версии Grails, особенно последнюю версию 1.1.1, если вы ее еще не используете. Этот пост ML описывает идентичное сообщение об ошибке, которое, по-видимому, зависело от версии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...