Hello,
first of all, I apologize for my bad English...
I have a problem but I don't know how I can resolve it.
This is code:
------------------
PrintOnVideo.java
------------------
package stampa.wservice;
import stampa.data.Ordinabile;
public class PrintOnVideo{
public String print(Ordinabile o){
System.out.println("E' stato ricevuto un oggetti di classe
"+o.getClass().getName());
return (o.getClass().getName());
}
}
------------------
Ordinabile.java
------------------
package stampa.data;
public interface Ordinabile
{
public boolean maggioreDi(Ordinabile o);
}
-------------------
PrintClient.java
-------------------
package stampa.client;
import javax.xml.namespace.QName;
import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;
import stampa.data.Carte;
public class PrintClient {
public static void main(String[] args1) throws AxisFault {
RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
EndpointReference targetEPR = new EndpointReference("
http://localhost:8080/axis2/services/PrintOnVideo");
options.setTo(targetEPR);
// Setting the weather
QName opPrint = new QName("http://wservice.stampa/xsd", "print");
//setto l'oggetto
Carte obj = new Carte("Re","Nero","Fiori");
Object[] opPrintArgs = new Object[] { obj };
Class[] returnTypes = new Class[] { String.class };
Object[] risposta = serviceClient.invokeBlocking(opPrint,
opPrintArgs,returnTypes);
String cclasse = (String) risposta[0];
if (cclasse == null) {
System.out.println("Weather didn't initialize!");
return;
}
// Displaying the result
System.out.println("La risposta e' stata "+cclasse);
}
}
-------------
Carte.java
-------------
package stampa.data;
public class Carte implements Ordinabile{
private String valore, colore, seme;
public Carte(){
valore=new String("Asso");
colore=new String("Rosso");
seme=new String("Cuori");
}
public Carte(String val, String col, String sm){
this.valore=val;
this.colore=col;
this.seme=sm;
}
public boolean maggioreDi(Ordinabile o){
if (o instanceof Carte){
Carte p=(Carte)o;
boolean ok= seme.equals(p.getSeme());
if ( ok ){
int x= Integer.parseInt(valore);
int ox= Integer.parseInt(p.getValore());
return ( x>ox );
}else{return false;}
}else{return false;}
}
String getValore(){return valore;}
String getColore(){return colore;}
String getSeme(){return seme;}
}
When I run my client, I have this exception:
linux:~/TESI/PrintOnVideo/build/PrintOnVideo # java -
Djava.ext.dirs=/usr/local/axis2-1.1.1/lib/ stampa.client.PrintClient
Exception in thread "main" org.apache.axis2.AxisFault: Exception occurred
while trying to invoke service method print
at org.apache.axis2.description.OutInAxisOperationClient.send(
OutInAxisOperation.java:271)
at org.apache.axis2.description.OutInAxisOperationClient.execute(
OutInAxisOperation.java:202)
at org.apache.axis2.client.ServiceClient.sendReceive (
ServiceClient.java:579)
at org.apache.axis2.client.ServiceClient.sendReceive(
ServiceClient.java:508)
at org.apache.axis2.rpc.client.RPCServiceClient.invokeBlocking(
RPCServiceClient.java:95)
at stampa.client.PrintClient.main(Unknown Source)
I don't know what it means....
How can I resolve my problem?
Thanks very much!!
Kay*