Tag Archives: java

Java path problems on Windows

Once you start developing either Java applications, using a Java based IDE or a Java based build or compile tool on Windows it is most likely you have faced a Java Path problem. Some software recognizes path spaces, some other don’t. You can avoid all those problems by installing your Java SDK on a Unix friendly path :)

Important Note: Do not follow blindly everything I wrote. I am not a fortune teller nor a magician so READ carefully your screens, UNDERSTAND THE INSTRUCTIONS and adapt them to your system configuration. I do not take responsibility for any damage done to your system just because you do not know how to follow instructions.

Let’s begin.

Continue reading

Porque adoro PHP y no me gusta Java

Usando un caso practico muy común en mi trabajo que es consumir un servicio web, pretendo demostrar de forma breve (si Java me lo permite) con un ejemplo el por que adoro programar en PHP vs porque (casi literalmente) odio programar con Java.


Pasos para consumir un servicio web SOAP con PHP:

1. Asegurarme que mi instalacion de PHP cuenta con la extension php_soap.
2. Escribir el siguiente codigo:

<?php<br  /?>$client = new SoapClient("http://www.webservicex.net/globalweather.asmx?WSDL");<br />$response = $client->GetWeather(array('CityName'=>'Puebla','CountryName'=>'Mexico'));<br />echo $response->GetWeatherResult;<br /><br /><br />

3. Disfrutar :)

Pasos para consumir un servicio web SOAP con Java:

1. Usando Axis importar el WSDL para generar las diversas clases de java para consumir los servicios:

SET TMPCLASSPATH=%CLASSPATH%<br />SET ROOT=.lib<br />SET CLASSPATH=.<br />SET CLASSPATH=%CLASSPATH%;%ROOT%axis.jar<br />SET CLASSPATH=%CLASSPATH%;%ROOT%jaxrpc.jar<br />SET CLASSPATH=%CLASSPATH%;%ROOT%saaj.jar<br />SET CLASSPATH=%CLASSPATH%;%ROOT%commons-logging-1.0.4.jar<br />SET CLASSPATH=%CLASSPATH%;%ROOT%commons-discovery-0.2.jar<br />SET CLASSPATH=%CLASSPATH%;%ROOT%wsdl4j-1.5.1.jar<br />SET CLASSPATH=%CLASSPATH%;%ROOT%log4j-1.2.8.jar<br />java -cp %CLASSPATH% org.apache.axis.wsdl.WSDL2Java -v -o src http://www.webservicex.net/globalweather.asmx?WSDL<br />SET CLASSPATH=%TMPCLASSPATH%<br /><br />

2. Hacer proyecto Java en NetBeans (o su IDE de Java preferido) y agregar los JAR necesarios de Axis.
3. Copiar (si es que no se generaron ya en el lugar correcto) el código generado por Axis.

Escribir la siguiente clase en Java:

package weatherdemo;<br /><br />import NET.webserviceX.www.*;<br /><br />public class Main {<br /> private static GlobalWeatherSoapStub binding = null;<br /><br /> public static void main(String[] args) {<br />  String result = "";<br />  try {<br />   binding = (GlobalWeatherSoapStub) new GlobalWeatherLocator().getGlobalWeatherSoap();<br />  } catch (Exception ex1) {<br />   System.out.println(ex1.getMessage());<br />   return;<br />  }<br /><br />  try {<br />   result = binding.getWeather("Puebla", "Mexico");<br />  } catch (Exception ex2) {<br />   System.out.println(ex2.getMessage());<br />   return;<br />  }<br /><br />  System.out.println(result);<br />  return;<br /> }<br />}<br /><br />

4. Disfrutar… ?

Resultados

3 lineas de PHP contra cuantas de Java :D ?