Talk:Acceleo/Forums

From Eclipsepedia

Jump to: navigation, search

Hi Everybody,

I have to create a project in jboss errai but I want to generate must of my model code using acceleo using eclipse modeling framework .ecore model. I have done this things.

1. created maven project using command

mvn archetype:generate -DarchetypeGroupId=org.jboss.errai.archetypes -DarchetypeArtifactId=cdi-quickstart -DarchetypeVersion=2.2.0.Final

2.Imported project to eclipse as existing maven project.

3.Goes to Acceleo->Convert Project to Acceleo Generator Project but getting nothing.

4.Then I goes to Acceleo->Convert to Acceleo MTL Projects and created a new acceleo project and generated model to my previous project using .ecore model but getting error in model class as I am getting EString at String and other also as E-datatype ,plz suggest solutions.

my main.mtl template is

[comment encoding = UTF-8 /] [module main('http://www.eclipse.org/emf/2002/Ecore') ]


[template public generateElement(anEClass : EClass)] [comment @main /] [file (anEClass.name.concat('.java'), false, 'UTF-8')]

   public class [anEClass.name.toUpperFirst()/]{

[ for (p:EAttribute|anEClass.eAttributes) separator('\n')] private [p.eAttributeType.name/] [p.name/]; [/for]

[ for (p:EAttribute|anEClass.eAttributes) separator('\n')] public [p.eAttributeType.name/] get[p.name.toUpperFirst()/]() {

   return this.[p.name/];


} [/for]

[ for (p:EAttribute|anEClass.eAttributes) separator('\n')] public void set[p.name.toUpperFirst()/]([p.eAttributeType.name/] [p.name/]) {

this.[p.name/]=[p.name/];

} [/for]


[protected ('protected')]

[/protected]

}


[/file] [/template]



I am getting my classes


public class UserRegistration{ private EString strFirstName;

private EString strSurName;

private EString strOccupation;

private EString strQualificaion;

private EString strFotherName;

private EString strMotherName;

private EEList chMaritalStatus;

private EDouble dblAnnualIncome;

private EDate dtDOB;

private EString strAbout;

private EJavaClass objAcceleo;

public EString getStrFirstName() {

return this.strFirstName;


}

public EString getStrSurName() {

return this.strSurName;


}

public EString getStrOccupation() {

return this.strOccupation;


}

public EString getStrQualificaion() {

return this.strQualificaion;


}

public EString getStrFotherName() {

return this.strFotherName;


}

public EString getStrMotherName() {

return this.strMotherName;


}

public EEList getChMaritalStatus() {

return this.chMaritalStatus;


}

public EDouble getDblAnnualIncome() {

return this.dblAnnualIncome;


}

public EDate getDtDOB() {

return this.dtDOB;


}

public EString getStrAbout() {

return this.strAbout;


}

public EJavaClass getObjAcceleo() {

return this.objAcceleo;


}

public void setStrFirstName(EString strFirstName) {

this.strFirstName=strFirstName;

}

public void setStrSurName(EString strSurName) {

this.strSurName=strSurName;

}

public void setStrOccupation(EString strOccupation) {

this.strOccupation=strOccupation;

}

public void setStrQualificaion(EString strQualificaion) {

this.strQualificaion=strQualificaion;

}

public void setStrFotherName(EString strFotherName) {

this.strFotherName=strFotherName;

}

public void setStrMotherName(EString strMotherName) {

this.strMotherName=strMotherName;

}

public void setChMaritalStatus(EEList chMaritalStatus) {

this.chMaritalStatus=chMaritalStatus;

}

public void setDblAnnualIncome(EDouble dblAnnualIncome) {

this.dblAnnualIncome=dblAnnualIncome;

}

public void setDtDOB(EDate dtDOB) {

this.dtDOB=dtDOB;

}

public void setStrAbout(EString strAbout) {

this.strAbout=strAbout;

}

public void setObjAcceleo(EJavaClass objAcceleo) {

this.objAcceleo=objAcceleo;

}


Start of user code protected

End of user code

}



public class Acceleo{ private EString strName;

private EString strSurName;

public EString getStrName() {

return this.strName;


}

public EString getStrSurName() {

return this.strSurName;


}

public void setStrName(EString strName) {

this.strName=strName;

}

public void setStrSurName(EString strSurName) {

this.strSurName=strSurName;

}


Start of user code protected

End of user code

}



Plz suggest solution how to combine jboss errai application with acceleo for code generation of models