Hello,

I get an error while trying to run the example app that is on the this
site http://cwiki.apache.org/S2PLUGINS/json-plugin.html

After following the instructions i got this files:





////Welcome.jsp

<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
    <title>Welcome</title>
</head>
<body>

<s:url id="smdUrl" namespace="/nodecorate" action="SMDAction" />
<script type="text/javascript">
    //load dojo RPC
    dojo.require("dojo.rpc.*");

    //create service object(proxy) using SMD (generated by the json result)
    var service = new dojo.rpc.JsonService("${smdUrl}");

    //function called when remote method returns
    var callback = function(bean) {
        alert("Price for " + bean.name + " is " + bean.price);
    };

    //parameter
    var bean = {name: "Mocca"};

    //execute remote method
    var defered = service.doSomething(bean, 5);

    //attach callback to defered object
    defered.addCallback(callback);
</script>

</body>
</html>





////SMDAction.java

package smd;

import com.googlecode.jsonplugin.annotations.SMDMethod;
import com.opensymphony.xwork2.Action;

public class SMDAction {
    public String smd() {
        return Action.SUCCESS;
    }

    @SMDMethod
    public Bean doSomething(Bean bean, int quantity) {
        bean.setPrice(quantity * 10);
        return bean;
    }
}






////struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts
Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd";>

<struts>

<package name="RPC" namespace="/nodecorate" extends="json-default">
    <action name="SMDAction" class="smd.SMDAction" method="smd">
        <interceptor-ref name="json">
            <param name="enableSMD">true</param>
        </interceptor-ref>
        <result type="json">
             <param name="enableSMD">true</param>
        </result>
    </action>
</package>



</struts>





////Bean.java

package smd;

public class Bean {
    private String type;
    private int price;

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public int getPrice() {
        return price;
    }

    public void setPrice(int price) {
        this.price = price;
    }

}


////ERROR:

The error i get is this one:

org.apache.jasper.JasperException: Exception in JSP: /Welcome.jsp:8

5: </head>
6: <body>
7:
8: <s:url id="smdUrl" namespace="/nodecorate" action="SMDAction" />
9: <script type="text/javascript">
10:     //load dojo RPC
11:     dojo.require("dojo.rpc.*");

And the root cause:

java.lang.NullPointerException
        org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:58)
        
org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(StrutsBodyTagSupport.java:52)
        
org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:49)
        org.apache.jsp.Welcome_jsp._jspx_meth_s_url_0(Welcome_jsp.java:112)
        org.apache.jsp.Welcome_jsp._jspService(Welcome_jsp.java:59)
        org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)




if someone could help me i would greatly apreciate it. I think i have
all the libs i need on the /lib folder... seems like there is a
something missing on the url tag or something...

Thanks and sorry for the big mail.

-kobeto

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to