Ant + Xdoclet + Hibernate

2 respostas
smota

Ola Pessoal,

Fiz uma classe e quero gerar os mappings do hibernate dela usando o Xdoclet ... pra isso criei um script ant (abaixo) mas o problema é que não ta gerando nada :cry: Nem mesmo erro :lol:

<project name="projectFOO" default="all" basedir="./">

<!-- Variaveis do sistema -->
<property file="build.properties"/> 

<!-- Define os principais paths do sistema -->
<path id="xdoclet.classpath">
    <fileset dir="${xdoclet.home}/lib">
        <include name="*.jar"/>
    </fileset>
</path>

<!-- Define uma task para o Hibernate -->
<taskdef 
	name="hibernatedoclet"
	classname="xdoclet.modules.hibernate.HibernateDocletTask">
		<classpath refid="xdoclet.classpath"/>	
</taskdef>

<!-- Mappings do sistema -->
<target name="HibernateMappings">
	<echo>** Gerando mapeamento das classes **</echo>
	
    <hibernatedoclet
        destdir="${build.home}/${hibernate.mappings.package}"
        excludedtags="@version,@author,@todo"
        verbose="true">
    
        <fileset dir="${src.home}/${hibernate.mappings.package}">
            <include name="*.java"/>
            <not>
            	<filename name="*DAO.java"/>
            </not>
        </fileset>   
    </hibernatedoclet>	
    
	<echo>** FIM **</echo>
</target>

<target name="all" depends="HibernateMappings"/>

</project>

Alguma idéia?

Sim sim, as variaveis (a maioria dizendo o path dos arquivos) estao corretas (mesmo q nao tivesse, nao era pra dar algum erro?)

Por favor ASAP .. apesar do meu cachorrinho nao estar em perigo eu queria tanto ir embora hj e passar um fim de semana sem pensar nisso :wink:

Valeus

2 Respostas

ricardolecheta

ao invés de colocar:

<blockquote><fileset dir="${src.home}/${hibernate.mappings.package}">



<not>

<filename name="*DAO.java"/>

</not>

</fileset>

</blockquote>

tente assim:

<fileset dir="${src.home}">
    <include name="**/${hibernate.mappings.package}/*.java"/>
</fileset>

veja se assim funciona :slight_smile:

dukejeffrie

Se vc quiser usar o “replace” que eles recomendam, vc tb vai ter que mudar o script de exemplo (vc viu que tem um exemplo, neh??). O token que eles dao para o mapping nao funcionou pra mim.

Tá aqui o meu:

<!-- Generate hibernate files -->
        <hibernatedoclet destdir="${generated.hibernate.dir}" excludedtags="@version,@author,@todo" force="${generated.forced}" mergedir="${generated.hibernate.dir}" verbose="true">
            <fileset dir="${src.dir}">
                <include name="**/persistent/*.java"/>
            </fileset>
            <hibernate/>
        </hibernatedoclet>

        <!-- Upgrade grammar from Hibernate1 to Hibernate2 -->
        <replace dir="${generated.hibernate.dir}" summary="true">
            <include name="**/*.hbm.xml"/>
            <replacefilter token="readonly=" value="inverse="/>
            <replacefilter token="role=" value="name="/>
            <replacefilter token="hibernate-mapping-1.1.dtd" value="hibernate-mapping-2.0.dtd"/>
        </replace>
Criado 19 de setembro de 2003
Ultima resposta 20 de set. de 2003
Respostas 2
Participantes 3