Je souhaite inclure un jar qui contient du code m=E9tier dans un EJB qui
marchait avant cela, pour utiliser certains objets.
J'utilise ejbdoclet pour g=E9n=E9rer l'ejb. Le probl=E8me est que JBoss me
fait un classnotfound sur la classe que j'importe du jar, mais pas de
probl=E8me de compilation.
M=EAme chose si je d=E9jarre (excusez du n=E9ologisme) les classes et les
mets dans le jar de l'EJB...
J'ai la piste du META-INF (classpath) mais je ne sais pas comment faire
avec xdoclet.
Vous auriez une id=E9e ?.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Bruno Grieder
Bonjour,
Je souhaite inclure un jar qui contient du code métier dans un EJB qui marchait avant cela, pour utiliser certains objets. J'utilise ejbdoclet pour générer l'ejb. Le problème est que JBoss me fait un classnotfound sur la classe que j'importe du jar, mais pas de problème de compilation. Même chose si je déjarre (excusez du néologisme) les classes et les mets dans le jar de l'EJB...
J'ai la piste du META-INF (classpath) mais je ne sais pas comment faire avec xdoclet. Vous auriez une idée ?.
Merci en tous cas !
Bonsoir
La compilation et l'exécution sont deux problèmes séparés. il est probable que ta librairie métier soit visible du compilateur mais pas de JBoss.
Pour rendre ta libraire métier accessible de ton EJB, mets la dans server/default/lib et redémarre to serveur Jboss (en admettant que default soit ton environnment cible).
Bruno Grieder
Bonjour,
Je souhaite inclure un jar qui contient du code métier dans un EJB qui
marchait avant cela, pour utiliser certains objets.
J'utilise ejbdoclet pour générer l'ejb. Le problème est que JBoss me
fait un classnotfound sur la classe que j'importe du jar, mais pas de
problème de compilation.
Même chose si je déjarre (excusez du néologisme) les classes et les
mets dans le jar de l'EJB...
J'ai la piste du META-INF (classpath) mais je ne sais pas comment faire
avec xdoclet.
Vous auriez une idée ?.
Merci en tous cas !
Bonsoir
La compilation et l'exécution sont deux problèmes séparés.
il est probable que ta librairie métier soit visible du compilateur mais
pas de JBoss.
Pour rendre ta libraire métier accessible de ton EJB, mets la dans
server/default/lib et redémarre to serveur Jboss (en admettant que
default soit ton environnment cible).
Je souhaite inclure un jar qui contient du code métier dans un EJB qui marchait avant cela, pour utiliser certains objets. J'utilise ejbdoclet pour générer l'ejb. Le problème est que JBoss me fait un classnotfound sur la classe que j'importe du jar, mais pas de problème de compilation. Même chose si je déjarre (excusez du néologisme) les classes et les mets dans le jar de l'EJB...
J'ai la piste du META-INF (classpath) mais je ne sais pas comment faire avec xdoclet. Vous auriez une idée ?.
Merci en tous cas !
Bonsoir
La compilation et l'exécution sont deux problèmes séparés. il est probable que ta librairie métier soit visible du compilateur mais pas de JBoss.
Pour rendre ta libraire métier accessible de ton EJB, mets la dans server/default/lib et redémarre to serveur Jboss (en admettant que default soit ton environnment cible).
Bruno Grieder
Twist
Merci, j'ai essayé cela marche pas. J'ai mis le jar à plusieurs endroits dont dans le lib du serveur en default. J'ai aussi changé dans ant pour qu'il rajoute l'attribut Class-Path dans le META-INF/MANIFEST.MF
La je sais plus trop mon but c'était a la base de mettre un jar qui sert à mapper des fichiers xml côté client et serveur, on appel un ejb avec un type de document en parametre genre ejb.process(MyDocument mydocument) qui retourne un document. C'est possible non ? on n'est tout de même pas obliger d'utiliser des objets de base ?.
Merci en tout cas toute aide sera la bienvenue !
Merci, j'ai essayé cela marche pas.
J'ai mis le jar à plusieurs endroits dont dans le lib du serveur en
default.
J'ai aussi changé dans ant pour qu'il rajoute l'attribut Class-Path
dans le META-INF/MANIFEST.MF
La je sais plus trop mon but c'était a la base de mettre un jar qui
sert à mapper des fichiers xml côté client et serveur, on appel un
ejb avec un type de document en parametre genre ejb.process(MyDocument
mydocument) qui retourne un document. C'est possible non ? on n'est
tout de même pas obliger d'utiliser des objets de base ?.
Merci, j'ai essayé cela marche pas. J'ai mis le jar à plusieurs endroits dont dans le lib du serveur en default. J'ai aussi changé dans ant pour qu'il rajoute l'attribut Class-Path dans le META-INF/MANIFEST.MF
La je sais plus trop mon but c'était a la base de mettre un jar qui sert à mapper des fichiers xml côté client et serveur, on appel un ejb avec un type de document en parametre genre ejb.process(MyDocument mydocument) qui retourne un document. C'est possible non ? on n'est tout de même pas obliger d'utiliser des objets de base ?.
Merci en tout cas toute aide sera la bienvenue !
Bruno Grieder
Twist wrote:
Merci, j'ai essayé cela marche pas. J'ai mis le jar à plusieurs endroits dont dans le lib du serveur en default. J'ai aussi changé dans ant pour qu'il rajoute l'attribut Class-Path dans le META-INF/MANIFEST.MF
La je sais plus trop mon but c'était a la base de mettre un jar qui sert à mapper des fichiers xml côté client et serveur, on appel un ejb avec un type de document en parametre genre ejb.process(MyDocument mydocument) qui retourne un document. C'est possible non ? on n'est tout de même pas obliger d'utiliser des objets de base ?.
Merci en tout cas toute aide sera la bienvenue !
Bien sûr c'est faisable et bien sûr, glisser des librairies dans lib, ça marche. Le problème vient d'ailleurs.
Il ne faut PAS modifier le MANIFEST.MF soi-même. En fait il ne contient rien d'intéressant pour un JAR de ejb.
Inutile également de trop en mettre dans le xDoclet. Ci-dessous un exemple déjà assez complexe
Enfin, lorsqu'on passe en paramètre des arguments à une méthode d'un EJB, il faut bien s'assurer qu'ils sont supportés par la spec EBJ utilisée, en particulier qu'ils sont sérialisables. Une bonne façon d'éviter les mauvaise surprises est de se limiter aux types de base. En l'occurence pour du XML, mieux vaut le passer sous forme de String et le parser dans l'EJB. Une représentation DOM peut faire jusqu'à 10 fois la taille du texte.
bruno
/** * @author bgrieder * * @ejb.bean name="DataCluster" * display-name="Name for DataCluster" * description="Description for DataCluster" * jndi-name="secret/remote/core/datacluster" * local-jndi-name = "secret/local/core/datacluster" * type="BMP" * view-type="local" * * @ejb.value-object * * * @ejb.permission * view-type = "local" * unchecked = "true" * * @ejb.pk * **************Ref to the Hidden EJB wrapper ********************** ******* "ref-name" is the lookup name which is associated by jboss.ejb-local-ref to the jndi name * @ejb.ejb-external-ref * business = "com.secret.hidden.ejb.local.XySLWrapperLocal" * home = "com.secret.hidden.ejb.local.XySLWrapperLocalHome" * ref-name = "ejb/XySLWrapperLocal" * type = "Session" * view-type = "local" ******* the jndi-name is "as such" while the ref-name is the same as above without ejb/ * @jboss.ejb-local-ref * jndi-name = "secret/local/xyleme/xyslwrapper" * ref-name = "XySLWrapperLocal" *
Twist wrote:
Merci, j'ai essayé cela marche pas.
J'ai mis le jar à plusieurs endroits dont dans le lib du serveur en
default.
J'ai aussi changé dans ant pour qu'il rajoute l'attribut Class-Path
dans le META-INF/MANIFEST.MF
La je sais plus trop mon but c'était a la base de mettre un jar qui
sert à mapper des fichiers xml côté client et serveur, on appel un
ejb avec un type de document en parametre genre ejb.process(MyDocument
mydocument) qui retourne un document. C'est possible non ? on n'est
tout de même pas obliger d'utiliser des objets de base ?.
Merci en tout cas toute aide sera la bienvenue !
Bien sûr c'est faisable et bien sûr, glisser des librairies dans lib, ça
marche. Le problème vient d'ailleurs.
Il ne faut PAS modifier le MANIFEST.MF soi-même. En fait il ne contient
rien d'intéressant pour un JAR de ejb.
Inutile également de trop en mettre dans le xDoclet. Ci-dessous un
exemple déjà assez complexe
Enfin, lorsqu'on passe en paramètre des arguments à une méthode d'un
EJB, il faut bien s'assurer qu'ils sont supportés par la spec EBJ
utilisée, en particulier qu'ils sont sérialisables. Une bonne façon
d'éviter les mauvaise surprises est de se limiter aux types de base.
En l'occurence pour du XML, mieux vaut le passer sous forme de String et
le parser dans l'EJB. Une représentation DOM peut faire jusqu'à 10 fois
la taille du texte.
bruno
/**
* @author bgrieder
*
* @ejb.bean name="DataCluster"
* display-name="Name for DataCluster"
* description="Description for DataCluster"
* jndi-name="secret/remote/core/datacluster"
* local-jndi-name = "secret/local/core/datacluster"
* type="BMP"
* view-type="local"
*
* @ejb.value-object
*
*
* @ejb.permission
* view-type = "local"
* unchecked = "true"
*
* @ejb.pk
*
**************Ref to the Hidden EJB wrapper **********************
******* "ref-name" is the lookup name which is associated by
jboss.ejb-local-ref to the jndi name
* @ejb.ejb-external-ref
* business = "com.secret.hidden.ejb.local.XySLWrapperLocal"
* home = "com.secret.hidden.ejb.local.XySLWrapperLocalHome"
* ref-name = "ejb/XySLWrapperLocal"
* type = "Session"
* view-type = "local"
******* the jndi-name is "as such" while the ref-name is the same as
above without ejb/
* @jboss.ejb-local-ref
* jndi-name = "secret/local/xyleme/xyslwrapper"
* ref-name = "XySLWrapperLocal"
*
Merci, j'ai essayé cela marche pas. J'ai mis le jar à plusieurs endroits dont dans le lib du serveur en default. J'ai aussi changé dans ant pour qu'il rajoute l'attribut Class-Path dans le META-INF/MANIFEST.MF
La je sais plus trop mon but c'était a la base de mettre un jar qui sert à mapper des fichiers xml côté client et serveur, on appel un ejb avec un type de document en parametre genre ejb.process(MyDocument mydocument) qui retourne un document. C'est possible non ? on n'est tout de même pas obliger d'utiliser des objets de base ?.
Merci en tout cas toute aide sera la bienvenue !
Bien sûr c'est faisable et bien sûr, glisser des librairies dans lib, ça marche. Le problème vient d'ailleurs.
Il ne faut PAS modifier le MANIFEST.MF soi-même. En fait il ne contient rien d'intéressant pour un JAR de ejb.
Inutile également de trop en mettre dans le xDoclet. Ci-dessous un exemple déjà assez complexe
Enfin, lorsqu'on passe en paramètre des arguments à une méthode d'un EJB, il faut bien s'assurer qu'ils sont supportés par la spec EBJ utilisée, en particulier qu'ils sont sérialisables. Une bonne façon d'éviter les mauvaise surprises est de se limiter aux types de base. En l'occurence pour du XML, mieux vaut le passer sous forme de String et le parser dans l'EJB. Une représentation DOM peut faire jusqu'à 10 fois la taille du texte.
bruno
/** * @author bgrieder * * @ejb.bean name="DataCluster" * display-name="Name for DataCluster" * description="Description for DataCluster" * jndi-name="secret/remote/core/datacluster" * local-jndi-name = "secret/local/core/datacluster" * type="BMP" * view-type="local" * * @ejb.value-object * * * @ejb.permission * view-type = "local" * unchecked = "true" * * @ejb.pk * **************Ref to the Hidden EJB wrapper ********************** ******* "ref-name" is the lookup name which is associated by jboss.ejb-local-ref to the jndi name * @ejb.ejb-external-ref * business = "com.secret.hidden.ejb.local.XySLWrapperLocal" * home = "com.secret.hidden.ejb.local.XySLWrapperLocalHome" * ref-name = "ejb/XySLWrapperLocal" * type = "Session" * view-type = "local" ******* the jndi-name is "as such" while the ref-name is the same as above without ejb/ * @jboss.ejb-local-ref * jndi-name = "secret/local/xyleme/xyslwrapper" * ref-name = "XySLWrapperLocal" *
Bruno Grieder
Twist wrote:
Merci, j'ai essayé cela marche pas. J'ai mis le jar à plusieurs endroits dont dans le lib du serveur en default. J'ai aussi changé dans ant pour qu'il rajoute l'attribut Class-Path dans le META-INF/MANIFEST.MF
La je sais plus trop mon but c'était a la base de mettre un jar qui sert à mapper des fichiers xml côté client et serveur, on appel un ejb avec un type de document en parametre genre ejb.process(MyDocument mydocument) qui retourne un document. C'est possible non ? on n'est tout de même pas obliger d'utiliser des objets de base ?.
Merci en tout cas toute aide sera la bienvenue !
Bien sûr c'est faisable et bien sûr, glisser des librairies dans lib, ça marche. Le problème vient d'ailleurs.
Il ne faut PAS modifier le MANIFEST.MF soi-même. En fait il ne contient rien d'intéressant pour un JAR de ejb.
Inutile également de trop en mettre dans le xDoclet. Ci-dessous un exemple déjà assez complexe
Enfin, lorsqu'on passe en paramètre des arguments à une méthode d'un EJB, il faut bien s'assurer qu'ils sont supportés par la spec EBJ utilisée, en particulier qu'ils sont sérialisables. Une bonne façon d'éviter les mauvaise surprises est de se limiter aux types de base. En l'occurence pour du XML, mieux vaut le passer sous forme de String et le parser dans l'EJB. Une représentation DOM peut faire jusqu'à 10 fois la taille du texte.
bruno
/** * @author bgrieder * * @ejb.bean name="DataCluster" * display-name="Name for DataCluster" * description="Description for DataCluster" * jndi-name="secret/remote/core/datacluster" * local-jndi-name = "secret/local/core/datacluster" * type="BMP" * view-type="local" * * @ejb.value-object * * * @ejb.permission * view-type = "local" * unchecked = "true" * * @ejb.pk * **************Ref to the Hidden EJB wrapper ********************** ******* "ref-name" is the lookup name which is associated by jboss.ejb-local-ref to the jndi name * @ejb.ejb-external-ref * business = "com.secret.hidden.ejb.local.XySLWrapperLocal" * home = "com.secret.hidden.ejb.local.XySLWrapperLocalHome" * ref-name = "ejb/XySLWrapperLocal" * type = "Session" * view-type = "local" ******* the jndi-name is "as such" while the ref-name is the same as above without ejb/ * @jboss.ejb-local-ref * jndi-name = "secret/local/xyleme/xyslwrapper" * ref-name = "XySLWrapperLocal" *
Twist wrote:
Merci, j'ai essayé cela marche pas.
J'ai mis le jar à plusieurs endroits dont dans le lib du serveur en
default.
J'ai aussi changé dans ant pour qu'il rajoute l'attribut Class-Path
dans le META-INF/MANIFEST.MF
La je sais plus trop mon but c'était a la base de mettre un jar qui
sert à mapper des fichiers xml côté client et serveur, on appel un
ejb avec un type de document en parametre genre ejb.process(MyDocument
mydocument) qui retourne un document. C'est possible non ? on n'est
tout de même pas obliger d'utiliser des objets de base ?.
Merci en tout cas toute aide sera la bienvenue !
Bien sûr c'est faisable et bien sûr, glisser des librairies dans lib, ça marche. Le problème vient d'ailleurs.
Il ne faut PAS modifier le MANIFEST.MF soi-même. En fait il ne contient rien d'intéressant pour un JAR de ejb.
Inutile également de trop en mettre dans le xDoclet. Ci-dessous un exemple déjà assez complexe
Enfin, lorsqu'on passe en paramètre des arguments à une méthode d'un EJB, il faut bien s'assurer qu'ils sont supportés par la spec EBJ utilisée, en
particulier qu'ils sont sérialisables. Une bonne façon d'éviter les mauvaise surprises est de se limiter aux types de base.
En l'occurence pour du XML, mieux vaut le passer sous forme de String et le parser dans l'EJB. Une représentation DOM peut faire jusqu'à 10 fois la
taille du texte.
bruno
/**
* @author bgrieder
*
* @ejb.bean name="DataCluster"
* display-name="Name for DataCluster"
* description="Description for DataCluster"
* jndi-name="secret/remote/core/datacluster"
* local-jndi-name = "secret/local/core/datacluster"
* type="BMP"
* view-type="local"
*
* @ejb.value-object
*
*
* @ejb.permission
* view-type = "local"
* unchecked = "true"
*
* @ejb.pk
*
**************Ref to the Hidden EJB wrapper **********************
******* "ref-name" is the lookup name which is associated by jboss.ejb-local-ref to the jndi name
* @ejb.ejb-external-ref
* business = "com.secret.hidden.ejb.local.XySLWrapperLocal"
* home = "com.secret.hidden.ejb.local.XySLWrapperLocalHome"
* ref-name = "ejb/XySLWrapperLocal"
* type = "Session"
* view-type = "local"
******* the jndi-name is "as such" while the ref-name is the same as above without ejb/
* @jboss.ejb-local-ref
* jndi-name = "secret/local/xyleme/xyslwrapper"
* ref-name = "XySLWrapperLocal"
*
Merci, j'ai essayé cela marche pas. J'ai mis le jar à plusieurs endroits dont dans le lib du serveur en default. J'ai aussi changé dans ant pour qu'il rajoute l'attribut Class-Path dans le META-INF/MANIFEST.MF
La je sais plus trop mon but c'était a la base de mettre un jar qui sert à mapper des fichiers xml côté client et serveur, on appel un ejb avec un type de document en parametre genre ejb.process(MyDocument mydocument) qui retourne un document. C'est possible non ? on n'est tout de même pas obliger d'utiliser des objets de base ?.
Merci en tout cas toute aide sera la bienvenue !
Bien sûr c'est faisable et bien sûr, glisser des librairies dans lib, ça marche. Le problème vient d'ailleurs.
Il ne faut PAS modifier le MANIFEST.MF soi-même. En fait il ne contient rien d'intéressant pour un JAR de ejb.
Inutile également de trop en mettre dans le xDoclet. Ci-dessous un exemple déjà assez complexe
Enfin, lorsqu'on passe en paramètre des arguments à une méthode d'un EJB, il faut bien s'assurer qu'ils sont supportés par la spec EBJ utilisée, en particulier qu'ils sont sérialisables. Une bonne façon d'éviter les mauvaise surprises est de se limiter aux types de base. En l'occurence pour du XML, mieux vaut le passer sous forme de String et le parser dans l'EJB. Une représentation DOM peut faire jusqu'à 10 fois la taille du texte.
bruno
/** * @author bgrieder * * @ejb.bean name="DataCluster" * display-name="Name for DataCluster" * description="Description for DataCluster" * jndi-name="secret/remote/core/datacluster" * local-jndi-name = "secret/local/core/datacluster" * type="BMP" * view-type="local" * * @ejb.value-object * * * @ejb.permission * view-type = "local" * unchecked = "true" * * @ejb.pk * **************Ref to the Hidden EJB wrapper ********************** ******* "ref-name" is the lookup name which is associated by jboss.ejb-local-ref to the jndi name * @ejb.ejb-external-ref * business = "com.secret.hidden.ejb.local.XySLWrapperLocal" * home = "com.secret.hidden.ejb.local.XySLWrapperLocalHome" * ref-name = "ejb/XySLWrapperLocal" * type = "Session" * view-type = "local" ******* the jndi-name is "as such" while the ref-name is the same as above without ejb/ * @jboss.ejb-local-ref * jndi-name = "secret/local/xyleme/xyslwrapper" * ref-name = "XySLWrapperLocal" *