Fala galera,

Estou com problemas com o granite utilizando mais de 1 projeto.

Por exemplo:

Eu tenho um projeto de negócio aonde estão as minhas classes java. Tenho
outro projeto aonde estão meus arquivos .mxml.

No caso é um projeto java e outro projeto flex.

Não sei se o problema tá no meu build ou se tá no mapeamento do
services-config, mas o caso é que não consigo fazer o granite buscar no
banco.

Testei usando aquele exemplo que vem no graniteds-pojo e funcionou... Só não
funciona quando utilizo mais de 1 projeto.

Segue a estrutura dos projetos:

Projeto de negócio (graniteds):
- bin
   - arquivos .class compilados
- src
   - conexao
     Conexao.java (Classe que faz a conexao)
   - noticia
      - Noticia.java (Pojo)
      - NoticiaService.java (Classe que executa a query e monta o pojo
Noticia)

Projeto flex (graniteds_flex)
- bin
   - arquivo granite_flex.swf compilado
- war
   - manterNoticia
      - ManterNoticia.mxml
   - WEB-INF
      - classes
         - log4j.xml
      - flex
         - services-config.xml
      - granite
         - granite-config.xml
      - lib
         - bibliotecas
      - web.xml
   - granite_flex.mxml

O meu destination do arquivo services-config.xml tá assim:

<destination id="noticia">
   <channels>
      <channel ref="my-graniteamf"/>
   </channels>
   <properties>
      <scope>application</scope>
      <source>noticia.NoticiaService</source>
   </properties>
</destination>

O meu remoteObject tá assim:

<mx:RemoteObject id="srvNoticia" destination="noticia"
result="resultSrvNoticia(event);" />

Segue a estrutura do meu build.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project name="graniteds_flex" default="deploy-jboss">
    <property name="diretorio-raiz" value="D:/Thiago/projetos" />
    <property name="nome-projeto" value="granite_flex" />
    <property name="diretorio-jboss" value="D:/jboss-4.0.5.GA" />
    <property name="flex.home" location="C:/Arquivos de programas/Adobe/Flex
Builder 2 Plug-in/Flex SDK 2" />
    <property name="flex.mxmlc" location="C:/Arquivos de
programas/Adobe/Flex Builder 2 Plug-in/Flex SDK 2/bin/mxmlc.exe" />

    <property name="deploy.dir" value="bin" />
    <property name="output.file.name" value="granite_flex"/>

    <target name="init">
        <delete dir="${deploy.dir}" />
        <mkdir dir="${deploy.dir}" />
    </target>

    <target name="check.swf" depends="init">
        <uptodate property="skip.mxmlc" targetfile="build/granite_flex.swf">
            <srcfiles dir= "${flex.home}/frameworks" includes="**"/>
            <srcfiles dir= "war" includes="**/*.mxml"/>
            <srcfiles dir= "war" includes="WEB-INF/flex/services-config.xml
"/>
        </uptodate>
    </target>

    <target name="compile" depends="check.swf" unless="skip.mxmlc">
        <exec executable="${flex.mxmlc}" failonerror="true">
            <arg line="-output '${deploy.dir}/${output.file.name}.swf'" />
            <arg line="war/${output.file.name}.mxml"/>
        </exec>
    </target>

    <target name="construir-war" depends="compile">
        <delete
file="${diretorio-raiz}/sistema/${nome-projeto}/${nome-projeto}.war" />
        <jar
destfile="${diretorio-raiz}/sistema/${nome-projeto}/${nome-projeto}.war">
            <zipfileset
dir="${diretorio-raiz}/sistema/${nome-projeto}/war/WEB-INF" prefix="WEB-INF"
includes="**/*.*">
                <exclude name="**/log4j.*"/>
            </zipfileset>
            <zipfileset dir="${diretorio-raiz}/sistema/${nome-projeto}/bin"
includes="**/*.*" />
            <zipfileset
dir="${diretorio-raiz}/sistema/${nome-projeto}/war/flex" prefix="flex"
includes="**/*.*" />
            <zipfileset dir="${diretorio-raiz}/sistema/graniteds/bin"
prefix="WEB-INF/classes" includes="**/*.class" />
        </jar>
    </target>

    <target name="deploy-jboss" depends="construir-war">
        <delete
file="${diretorio-jboss}/server/default/deploy/${nome-projeto}.war" />
        <copy
file="${diretorio-raiz}/sistema/${nome-projeto}/${nome-projeto}.war"
todir="${diretorio-jboss}/server/default/deploy/"/>
    </target>
</project>

O que faço basicamente é compilar o .mxml, gerar o .swf, montar o .war
copiando o .swf gerado e a pasta WEB-INF do projeto flex pra raiz. Já no
projeto de negocio, copio os arquivos da pasta bin e jogo dentro da WEB-INF.

--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a