Deploy de WS. Axis & JBoss & Ant

Olá. Estou com um problema com Web Services.

Minha duvida principal é a exception no final do post. Mas deixei umas duvidas no meio do caminho que se alguem puder responder eu tambem gostaria de saber.

Consegui gerar o WSDL com a seguinte task-ant:

	<taskdef name="axis-java2wsdl" classname="org.apache.axis.tools.ant.wsdl.Java2WsdlAntTask">
		<classpath refid="classpath" />
	</taskdef>
	<target name="generateWSDL"
		description="Generates wsdl files from the java service interfaces">
		<mkdir dir="${wsdl.dir}" />
		<axis-java2wsdl classpathref="classpath"
			output="${wsdl.dir}/AccountService.wsdl" location="http://localhost:9090/axis/services/CRM"
			namespace="crmacc" classname="net.culturainglesa.crm.domain.services.AccountService">
			<mapping namespace="crmacc"
				package="net.cin.crm.domain.services.AccountService" />
		</axis-java2wsdl>
	</target>

Duvida: Pra que serve o namespace que setei como ‘crmacc’? No exemplo que eu vi, ali era uma url.
Duvida: Nessa task eu mando gerar varios wsdls, como eu mando varrer o diretorio e gerar os arquivos sem ter que descrever um por um?Não consegui usar o pattern com ‘*’.

E gero o arquivo WSDD com a seguinte:

	<target name="generateWSDD" description="Generates wsdd files from the wsdl files">
		<mkdir dir="${wsdd.dir}" />
		<axis-wsdl2java output="${wsdd.dir}" deployscope="Application"
			serverside="true" url="${wsdl.dir}\AccountService.wsdl">
		</axis-wsdl2java>
	</target>

A mesma duvida do outro, para gerar varios arquivos de uma vez.

E tenho a seguinte task para fazer o deploy:

	<target name="deployWebservice"
		description="Deploys the webservice onto the server, using the wsdd file and Axis' AdminClient">
		<java classname="org.apache.axis.client.AdminClient"
			classpathref="classpath" fork="true">
			<arg value="${wsdd.dir}/crmacc/deploy.wsdd" />
		</java>
	</target>

Entretanto o seguinte erro é lançado a executar a ultima.

deployWebservice:
     [java] Processing file C:\Users\Marcos.Vasconcelos\workspace\jse\crm-core\build\wsdd/crmacc/deploy.wsdd
     [java] Exception: AxisFault
     [java]  faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
     [java]  faultSubcode: 
     [java]  faultString: java.net.ConnectException: Connection refused: connect
     [java]  faultActor: 
     [java]  faultNode: 
     [java]  faultDetail: 
     [java] 	{http://xml.apache.org/axis/}stackTrace:java.net.ConnectException: Connection refused: connect
     [java] 	at java.net.PlainSocketImpl.socketConnect(Native Method)
     [java] 	at java.net.PlainSocketImpl.doConnect(Unknown Source)
     [java] 	at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
     [java] 	at java.net.PlainSocketImpl.connect(Unknown Source)
     [java] 	at java.net.SocksSocketImpl.connect(Unknown Source)
     [java] 	at java.net.Socket.connect(Unknown Source)
     [java] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     [java] 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
     [java] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
     [java] 	at java.lang.reflect.Method.invoke(Unknown Source)
     [java] 	at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:153)
     [java] 	at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:120)
     [java] 	at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:191)
     [java] 	at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:404)
     [java] 	at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
     [java] 	at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
     [java] 	at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
     [java] 	at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
     [java] 	at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
     [java] 	at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
     [java] 	at org.apache.axis.client.Call.invoke(Call.java:2767)
     [java] 	at org.apache.axis.client.Call.invoke(Call.java:1792)
     [java] 	at org.apache.axis.client.AdminClient.process(AdminClient.java:439)
     [java] 	at org.apache.axis.client.AdminClient.process(AdminClient.java:404)
     [java] 	at org.apache.axis.client.AdminClient.process(AdminClient.java:410)
     [java] 	at org.apache.axis.client.AdminClient.process(AdminClient.java:320)
     [java] 	at org.apache.axis.client.AdminClient.main(AdminClient.java:463)
     [java] 	{http://xml.apache.org/axis/}hostname:img825
     [java] Java Result: 1

Alguém sabe o que acontece?

Meu ambiente é com JBoss 4.1.2 e o deploy no server é Axis 1.4
Não sei se isso pode ter a ver, mas minha internet usa proxy e não sei se é necessario configurar isso pro AdminClient do axis.

Porque você não usa JAX-WS ? Você cria um EJB, anota ele com @WebService e voilá. Não precisa de nada disso do Axis.

[]´s

É por que é um sistema legado, e precisa fazer manutenção.
Então tenho que continuar com ele, mas peguei de um jeito que nao dava nem pra executar. E eu só conhecia Web Services teoricamente.

Anyway… consegui descobrir…
É por que o JBoss roda em 9090 aqui e precisei passar isso como argumento.

		<java classname="org.apache.axis.client.AdminClient"
			classpathref="classpath" fork="true">
			<arg value="-p9090" />
			<arg value="${wsdd.dir}/crmemp/deploy.wsdd" />
		</java>

Minhas outras pequenas duvidas ainda estão de pé, mas não é tão urgente.

[quote]Anyway… consegui descobrir…
É por que o JBoss roda em 9090 aqui e precisei passar isso como argumento.
[/quote]

Muito obrigado… era o meu problema também hehe :lol: