This problem comes up from time to time and I always forget what it was, search the list and you find a few threads about it. It isn't related to the json plugin itself (you will get the error on the first used tag)
musachy On 7/30/07, Nicolás Mery <[EMAIL PROTECTED]> wrote: > 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] > > -- "Hey you! Would you help me to carry the stone?" Pink Floyd --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]