[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-3692) Seam 2.1.0.SP1 generate-ui fails

Tony Kay (JIRA) jira-events at lists.jboss.org
Tue Nov 11 17:46:36 EST 2008

Seam 2.1.0.SP1 generate-ui fails

                 Key: JBSEAM-3692
                 URL: https://jira.jboss.org/jira/browse/JBSEAM-3692
             Project: Seam
          Issue Type: Bug
          Components: Tools
    Affects Versions: 2.1.0.SP1
         Environment: Seam 2.1.0.SP1, Icefaces 1.7.2, Jboss AS 4.2.2
            Reporter: Tony Kay

My application runs fine (schema generation works, deployment works, existing code runs); however, running seam generate-ui produces the following error:

[hibernate] An exception occurred while running exporter #2:generic exportertemplate: view/list.xhtml.ftl
[hibernate] To get the full stack trace run ant with -verbose
[hibernate] org.hibernate.tool.hbm2x.ExporterException: Error while processing Entity: com.therapysites.cms.entity.Theme with template view/list.xhtml.ftl
[hibernate] freemarker.core.InvalidReferenceException: Expression property.value.typeName is undefined on line 27, column 18 in util/TypeInfo.ftl.

/Users/tonykay/seam/seam-gen/build.xml:1145: org.hibernate.tool.hbm2x.ExporterException: Error while processing Entity: com.therapysites.cms.entity.Theme with template view/list.xhtml.ftl

I've tried removing various mappings in the Theme class to see what is causing it, but nothing I do seems to help. Is there any way to get the property name that was being evaluated when it pukes?

Here are some of the classes, in case there is something obvious:

The Theme class looks like this:

public class Theme implements Serializable {
   private Long        id;
   private Integer     version;
   private String      name;
   private Design      design;
   private OverrideSet overrides;

   public Theme() {
      overrides = new OverrideSet();

   @Column(name = "theme_id")
   public Long getId() {
      return id;

   public void setId(Long id) {
      this.id = id;

   @Column(columnDefinition = "integer not null default 0")
   public Integer getVersion() {
      return version;

   private void setVersion(Integer version) {
      this.version = version;

   @Length(min = 1, max = 40)
   public String getName() {
      return name;

   public void setName(String name) {
      this.name = name;

   @ForeignKey(name = "fk_theme_design")
   @JoinColumn(name = "design_id")
   public Design getDesign() {
      return design;

   public void setDesign(Design design) {
      this.design = design;

   public OverrideSet getOverrides() {
      return overrides;

   public void setOverrides(OverrideSet overrides) {
      this.overrides = overrides;

and the Design class has this:

   @OneToMany(mappedBy="design", cascade=CascadeType.ALL)
   public Set<Theme> getThemes() {
      return themes;

   public void setThemes(Set<Theme> themes) {
      this.themes = themes;

The OverrideSet is an Embeddable with the following form:

public class OverrideSet implements Serializable {
   private static Log log = Logging.getLog(OverrideSet.class);
   private Map<String, ColorOverride>         colors           = null;

   private Set<ColorOverride>                 colorSet         = new HashSet<ColorOverride>();

   private <T extends ParameterOverride> void rebuildMap(Map<String, T> map, Set<T> set) {
      for(T p : set) {
         map.put(p.getName(), p);

   public Map<String, ColorOverride> getColors() {
      if(colors == null) { // Only rebuild if it does not exist!
         colors = new HashMap<String, ColorOverride>();
         rebuildMap(colors, colorSet);
      return colors;

   @JoinTable(joinColumns = @JoinColumn(name = "owner_id"), inverseJoinColumns = @JoinColumn(name = "override_id"))
   public Set<ColorOverride> getColorSet() {
      return colorSet;

   public void setColorSet(Set<ColorOverride> colorSet) {
      this.colorSet = colorSet;

   public void setColors(Map<String, ColorOverride> colors) {
      this.colors = colors;

   // Other kinds of overrides (images, etc), but just repeated form

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the seam-issues mailing list