Hola a todos,
Primero, soy bastante novata y ando algo perdida con el tema de los web services.
Tengo una aplicación (/TavernaServer.2.2a1) es decir, un punto .war ejecutándose en el tomcat. Necesito utilizar dicha aplicación para ejecutar una serie de workflows que tengo almacenados como ficheros en mi pc, y para ello lo tengo que invocar desde mi aplicación java.
Según la documentación que tengo de dicha aplicación, se supone que bastaría con subir los ficheros a direcciones... Y se supone que se ejecutaría dicho fichero, pero por más que leo la documentación y busco como invocar web services más me lio :(
Esta es la documentación:
http://dev.mygrid.org.uk/wiki/display/taverna/Usage
Y este es el código que he implementado y ya me da fallo, porque me devuelve un 404:
package WorkflowsExe;
import java.io.File;
import java.io.IOException;
import java.net.*;
import java.io.*;
public class Execution2 {
public static void main(String[] args) throws IOException {
String linea = null;
String uri =
"http://localhost:8080/TavernaServer%2E2%2E2a1/rest/runs";
URL url = null;
try {
url = new URL(uri);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
HttpURLConnection connection =
(HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setUseCaches(false);
connection.setAllowUserInteraction(false);
connection.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
// Creamos en la dirección indicada el fichero del workflow
OutputStream out = connection.getOutputStream();
Writer writer = new OutputStreamWriter(out, "UTF-8");
File fich = new File ("/home/marta/Ficheros/246697_5.t2flow");
FileReader fr = new FileReader (fich);
BufferedReader br = new BufferedReader(fr);
while ( ( linea = br.readLine() ) != null){
writer.write(URLEncoder.encode(linea));
}
writer.close();
out.close();
int resultado = connection.getResponseCode();
if (resultado != 201) {
throw new IOException(connection.getResponseMessage());
}
//connection.setRequestMethod("GET");
}
}
Alguien me puede echar un cable o alguna documentación para invocar dicho web service.
De antemano muchas gracias