[Java] Java2WSDL non riconosciuta

Installazione, configurazione e uso di programmi e strumenti.
Scrivi risposta
peppespe
Prode Principiante
Messaggi: 146
Iscrizione: lunedì 30 aprile 2007, 19:57

[Java] Java2WSDL non riconosciuta

Messaggio da peppespe »

Premetto di aver installato e configurato correttamente il SOAP Engine Axis 1.2 sia sotto la mia distribuzione Ubuntu 7.10 che su Win XP.

Ho però un problema sotto Ubuntu nel creare un file WSDL per un web service (denominato "ThaiPalaceMenuService") mediante la classe Java2WSDL mentre la medesima operazione sotto Win mi funziona correttamente, ecco gli esiti:

- Sotto Windows:

Codice: Seleziona tutto

C:\projects\thai>java org.apache.axis.wsdl.Java2WSDL -o ThaiPalaceMenuService.wsdl -l http://localhost:8080/axis/services/ThaiPalaceMenuService -n urn:com.dominio.service.ThaiPalaceMenuService -pcom.dominio.service.ThaiPalaceMenuService urn:com.dominio.service.ThaiPalaceMenuService ThaiPalaceMenuService
- Sotto Ubuntu:

Codice: Seleziona tutto

root@giuseppe-laptop:/home/giuseppe/projects/thai# java org.apache.axis.wsdl.Java2WSDL -o ThaiPalaceMenuService.wsdl -l http://localhost:8080/axis/services/ThaiPalaceMenuService -n urn:com.dominio.service.ThaiPalaceMenuService -pcom.dominio.service.ThaiPalaceMenuService urn:com.dominio.service.ThaiPalaceMenuService ThaiPalaceMenuService
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/axis/wsdl/Java2WSDL
e pure le variabili di ambiente mi sembrano settate correttamente:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
LANGUAGE="it_IT:it:en_GB:en"
LANG="it_IT.UTF-8"
JAVA_HOME="/usr/local/jdk1.6.0_03"
JAVA_HOME="/usr/lib/jvm/java-6-sun-1.6.0.03"
CLASSPATH="/var/lib/tomcat5.5/webapps/axis/WEB-INF/libaxis.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libaxis-ant.jar:
/var/lib/tomcat5.5/webapps/axis/WEB-INF/libcommons-discovery-0.2.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libcommons-logging-1.0.4.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libjaxrpc.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/liblog4j-1.2.8.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libsaaj.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libwsdl4j-1.5.1.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libmail.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libxercesImpl.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libxmlsec.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libcommons-httpclient-3.0-rc2.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libmailapi_1_3_1.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libservlet.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libclutil.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libxmlParserAPIs.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/activation.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/tools.jar:
/home/giuseppe/projects/junit3.8.1/junit.jar"
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Java2WSDL non riconosciuta

Messaggio da Massimo S. »

Sei sicuro che la var CLASSPATH sia settata bene?

Se dai il comando

Codice: Seleziona tutto

echo $CLASSPATH
te la visualizza tutta?

Forse il problema è l'eccessiva lunghezza della definizione della var, non so se c'è un limite in linux ...
peppespe
Prode Principiante
Messaggi: 146
Iscrizione: lunedì 30 aprile 2007, 19:57

Re: [Java] Java2WSDL non riconosciuta

Messaggio da peppespe »

mi sa ke hai proprio ragione:

root@giuseppe-laptop:/home/giuseppe/projects/thai# echo $CLASSPATH
/var/lib/tomcat5.5/webapps/axis/WEB-INF/libaxis.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libaxis-ant.jar:

invece di:

CLASSPATH="/var/lib/tomcat5.5/webapps/axis/WEB-INF/libaxis.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libaxis-ant.jar:
/var/lib/tomcat5.5/webapps/axis/WEB-INF/libcommons-discovery-0.2.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libcommons-logging-1.0.4.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libjaxrpc.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/liblog4j-1.2.8.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libsaaj.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libwsdl4j-1.5.1.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libmail.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libxercesImpl.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libxmlsec.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libcommons-httpclient-3.0-rc2.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libmailapi_1_3_1.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libservlet.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libclutil.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/libxmlParserAPIs.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/activation.jar:/var/lib/tomcat5.5/webapps/axis/WEB-INF/tools.jar:
/home/giuseppe/projects/junit3.8.1/junit.jar"

come si può risolvere questo problema?
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Java2WSDL non riconosciuta

Messaggio da Massimo S. »

Ma sei sicuro di non esserci andato un po largo con il classpath?  ;D
Tutti quei jar sono veramente necessari?

Come la imposti la variabile? Dentro uno script?
La parte di definizione che ti ha preso è molto più corta di quanto mi aspettavo, non è che c'è un carattere di "a capo" dopo "libaxis-ant.jar:" ?


Comunque potresti anche fare una prova nel definire la variabile a pezzi, cioè qualcosa del tipo

Codice: Seleziona tutto

export CLASSPATH=pezzo1
export CLASSPATH=$CLASSPATH:pezzo2
...
export CLASSPATH=$CLASSPATH:pezzoN
peppespe
Prode Principiante
Messaggi: 146
Iscrizione: lunedì 30 aprile 2007, 19:57

Re: [Java] Java2WSDL non riconosciuta

Messaggio da peppespe »

Massimo S. ha scritto:
Ma sei sicuro di non esserci andato un po largo con il classpath?  ;D
Tutti quei jar sono veramente necessari?

Come la imposti la variabile? Dentro uno script?
La parte di definizione che ti ha preso è molto più corta di quanto mi aspettavo, non è che c'è un carattere di "a capo" dopo "libaxis-ant.jar:" ?


Comunque potresti anche fare una prova nel definire la variabile a pezzi, cioè qualcosa del tipo

Codice: Seleziona tutto

export CLASSPATH=pezzo1
export CLASSPATH=$CLASSPATH:pezzo2
...
export CLASSPATH=$CLASSPATH:pezzoN
purtroppo x la realizzazione del progetto all'Uni sono richiesti tutti quei file .jar , mentre x quanto riguarda la c.d. definizioni di variabili a pezzi, se parli di configurazione da riga di comando, questi varrà solo per la sessione di lavoro in corso, dopo di che dovrei ripetere l'operazione ad ogni riuso e/o riavvio del pc.
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Java2WSDL non riconosciuta

Messaggio da Massimo S. »

Beh basta che metti la definizione .... ad esempio alla fine di .bashrc (file nascosto) nella tua home dir. e sei a posto.

Però prima fai una prova definendola al volo a riga di comando per vedere se funziona
peppespe
Prode Principiante
Messaggi: 146
Iscrizione: lunedì 30 aprile 2007, 19:57

Re: [Java] Java2WSDL non riconosciuta

Messaggio da peppespe »

ho provato così da riga di comando:

set AXIS_HOME=/var/lib/tomcat5.5/webapps/axis
set AXIS_LIB=$AXIS_HOME/WEB-INF/lib
set AXISCLASSPATH=$AXIS_LIB/axis.jar:$AXIS_LIB/activation.jar:$AXIS_LIB/commons-logging-1.0.4.jar:$AXIS_LIB/servlet.jar:$AXIS_LIB/axis-ant.jar:$AXIS_LIB/jaxrpc.jar:$AXIS_LIB/tools.jar:$AXIS_LIB/log4j-1.2.8.jar:$AXIS_LIB/wsdl4j-1.5.1.jar:$AXIS_LIB/clutil.jar:$AXIS_LIB/mailapi_1_3_1.jar:$AXIS_LIB/xercesImpl.jar:$AXIS_LIB/commons-discovery-0.2.jar:$AXIS_LIB/mail.jar:$AXIS_LIB/xmlParserAPIs.jar:$AXIS_LIB/commons-httpclient-3.0-rc2.jar:$AXIS_LIB/saaj.jar:$AXIS_LIB/xmlsec.jar:$AXIS_LIB/junit.jar
export AXIS_HOME; export AXIS_LIB; export AXISCLASSPATH

ma non ottengo nessun risultato utile poiché l'echo associato risulta vuoto, in cosa sbaglio?
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Java2WSDL non riconosciuta

Messaggio da Massimo S. »

invece di mettere export alla fine, sostituisci tutti i "set" con "export"

questo per la prova a riga di comando, dentro gli script dovrebbe funzionare anche come hai fatto
peppespe
Prode Principiante
Messaggi: 146
Iscrizione: lunedì 30 aprile 2007, 19:57

Re: [Java] Java2WSDL non riconosciuta

Messaggio da peppespe »

cioè dovrei inserire dentro environment il codice così come te l'ho presentato?
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Java2WSDL non riconosciuta

Messaggio da Massimo S. »

peppespe ha scritto: cioè dovrei inserire dentro environment il codice così come te l'ho presentato?
ti riferisci a /etc/environment ?

No mi sa che quello non ha questa sintassi.

Io dicevo in $HOME/.bashrc

(nota che /etc/environment è globale mentre .bashrc è locale alla bash lanciate dall'utente specifico)
peppespe
Prode Principiante
Messaggi: 146
Iscrizione: lunedì 30 aprile 2007, 19:57

Re: [Java] Java2WSDL non riconosciuta

Messaggio da peppespe »

ho fatto bene?
root@giuseppe-laptop:/home/giuseppe# gedit .bashrc

Codice: Seleziona tutto

# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# don't put duplicate lines in the history. See bash(1) for more options
export HISTCONTROL=ignoredups
# ... and ignore same sucessive entries.
export HISTCONTROL=ignoreboth

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)"

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
    ;;
*)
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
    ;;
esac

# Comment in the above and uncomment this below for a color prompt
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"'
    ;;
*)
    ;;
esac

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

#if [ -f ~/.bash_aliases ]; then
#    . ~/.bash_aliases
#fi

# enable color support of ls and also add handy aliases
if [ "$TERM" != "dumb" ]; then
    eval "`dircolors -b`"
    alias ls='ls --color=auto'
    #alias dir='ls --color=auto --format=vertical'
    #alias vdir='ls --color=auto --format=long'
fi

# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi

set AXIS_HOME=/var/lib/tomcat5.5/webapps/axis
set AXIS_LIB=$AXIS_HOME/WEB-INF/lib
set AXISCLASSPATH=$AXIS_LIB/axis.jar:$AXIS_LIB/activation.jar:$AXIS_LIB/commons-logging-1.0.4.jar:$AXIS_LIB/servlet.jar:$AXIS_LIB/axis-ant.jar:$AXIS_LIB/jaxrpc.jar:$AXIS_LIB/tools.jar:$AXIS_LIB/log4j-1.2.8.jar:$AXIS_LIB/wsdl4j-1.5.1.jar:$AXIS_LIB/clutil.jar:$AXIS_LIB/mailapi_1_3_1.jar:$AXIS_LIB/xercesImpl.jar:$AXIS_LIB/commons-discovery-0.2.jar:$AXIS_LIB/mail.jar:$AXIS_LIB/xmlParserAPIs.jar:$AXIS_LIB/commons-httpclient-3.0-rc2.jar:$AXIS_LIB/saaj.jar:$AXIS_LIB/xmlsec.jar:$AXIS_LIB/junit.jar
export AXIS_HOME; export AXIS_LIB; export AXISCLASSPATH
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Java2WSDL non riconosciuta

Messaggio da Massimo S. »

peppespe ha scritto: ho fatto bene?
Beh puoi verificarlo da solo, funziona?

Ad esempio se fai

Codice: Seleziona tutto

echo $AXIS_LIB
te la visualizza correttamente?

Io in un caso simile avevo fatto senza usare le "set" e con gli export uno per riga, tipo:

Codice: Seleziona tutto

VAR1=valore1
VAR2=valore2
export VAR1
export VAR2
ma penso che come hai fato tu sia lo stesso
peppespe
Prode Principiante
Messaggi: 146
Iscrizione: lunedì 30 aprile 2007, 19:57

Re: [Java] Java2WSDL non riconosciuta

Messaggio da peppespe »

Risolto senza SET

root@giuseppe-laptop:/home/giuseppe# echo $AXIS_LIB
/var/lib/tomcat5.5/webapps/axis/WEB-INF/lib
root@giuseppe-laptop:/home/giuseppe#
Ultima modifica di peppespe il mercoledì 19 dicembre 2007, 19:54, modificato 1 volta in totale.
Scrivi risposta

Ritorna a “Applicazioni”

Chi c’è in linea

Visualizzano questa sezione: Bing [Bot] e 6 ospiti