calculadoraServlet.class --> recibe dos parametros llama a un webservice que los suma. NOTA: el ws anda bien porque sale el resultado x la consola. El problema esta en el jsp que no puede mostrar getResultado().
resultado.class --->bean donde se guarda el resultado del proceso de calculadoraServlet.class
resultado.jsp : muestra el getResultado del bean.
Pero me dice esto: el resultado es: 0
/* beans.resultado */
Código PHP:
package Beans;
public class resultado {
private int _resultado;
public int getResultado(){
return this._resultado;
}
public void setResultado(int resultado) {
this._resultado = resultado;
}
}
Código PHP:
import java.io.*;
import java.net.*;
import Beans.resultado;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.xml.rpc.ParameterMode;
import javax.xml.namespace.QName;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;
public class Calculadora extends HttpServlet {
public void init(ServletConfig config) throws ServletException {
super.init(config);
}
public void destroy() {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {
String metodo;
int val1;
int val2;
val1 = new Integer(request.getParameter("num1")).intValue();
val2 = new Integer(request.getParameter("num2")).intValue();
try {
String endpoint = "http://localhost:8080/axis/services/Calculo";
Service service = new Service();
Call call = (Call) service.createCall();
Integer i1 = new Integer(val1);
Integer i2 = new Integer(val2);
String method ="sumar";
call.setTargetEndpointAddress( new java.net.URL(endpoint) );
call.setOperationName( method );
call.addParameter( "op1", XMLType.XSD_INT, ParameterMode.IN );
call.addParameter( "op2", XMLType.XSD_INT, ParameterMode.IN );
call.setReturnType( XMLType.XSD_INT );
Integer ret = (Integer) call.invoke( new Object [] { i1, i2 });
resultado myRes = new Beans.resultado();
myRes.setResultado(ret.intValue());
request.setAttribute("Beans.resultado",myRes);
getServletConfig().getServletContext().getRequestDispatcher("/resultado.jsp").forward(request, response);
System.out.println("*** Resultado : " + ret);
}
catch (Exception e) {
System.out.println("*** Error: " + e.getMessage());
}
}
catch(Exception e) { System.out.println("*** Error: " + e.getMessage()); };
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try { doGet(request,response); }
catch(Exception e) { System.out.println("*** Error: " + e.getMessage()); }
}
}
/* resultado.jsp */
Código PHP:
<%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %>
<jsp:useBean id="result" scope="page" class="Beans.resultado"/>
<html>
<head>
<title>:: Resultado ::</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
el resultado es: <jsp:getProperty name="result" property="resultado"/>
</body>
</html>