Grails Java域类中的toString()导致
默认情况下,grails似乎返回Java域对象的toString()的Grails Java域类中的toString()导致,grails,Grails,默认情况下,grails似乎返回Java域对象的toString()的:。当然,这根本不是我想要的,所以我尝试@Override 返回我想要的内容的toString()。当我尝试grails generate all标记类型时,出现以下错误: java.lang.LinkageError: loader constraint violation: loader (instance of <bootloader>) previously initiated loading for a
:
。当然,这根本不是我想要的,所以我尝试@Override
返回我想要的内容的toString()。当我尝试grails generate all标记类型时,出现以下错误:
java.lang.LinkageError: loader constraint violation: loader (instance of <bootloader>) previously initiated loading for a differen
t type with name "org/w3c/dom/NamedNodeMap"
我在Grails域类中重写了
toString()
,没有任何问题,所以这不是原因。表明这可能是名称冲突的结果,可能是暂时的(您是否尝试运行“grails clean”?),也可能是类名标记类型与某些grails内部冲突
您可以尝试的另一件事是使用不同版本的Grails,特别是最新的1.1.1(如果您还没有使用)。描述了一条明显依赖于版本的相同错误消息。感谢您的回复。为了确保我的问题清楚,我试图在JAVA类而不是Grails类中重写toString。我现在使用的是1.1.1,我确实做了GrailsClean,因为Java类中发生的“魔法”更少,所以出现问题的可能性应该更小。根据我链接到的文章,这可能是grails插件所需的JAR与您自己的Projection之间的冲突。toString()应该引起问题,这真的没有道理。不幸的是,我犯了一个错误,一次更改多个内容。我还玩了几个插件(laszlo&zk)。我不确定是哪一个导致了问题,但无论如何,这是一个环境问题。我创建了一个新的应用程序,重新生成,一切都很好。toString()的工作原理与预期相同。再次感谢你为我指出了正确的方向。从OP对答案的评论来看,这不应该被关闭,因为它是由其他插件和环境造成的吗。
@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();
}
}