Hi. I have built Struts 2 from the head a few days ago. I am trying to move my 
ajax code over to the new dojo plugin, but it doesn't seem to work for me. The 
examples in the showcase do work, however I get an error when I try to add the 
functionality to my own site.

The error seems to be present for the rendering of dojo tags. For a closing 
tree tag:

2007-09-20 11:25:02,927 ERROR (org.apache.struts2.components.ClosingUIBean:60) 
- Could not open template
SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.NullPointerException
        at 
org.apache.struts2.dojo.components.Tree.evaluateExtraParams(Tree.java:270)
        at org.apache.struts2.components.UIBean.evaluateParams(UIBean.java:828)
        at org.apache.struts2.components.UIBean.end(UIBean.java:493)
        at 
org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:41)
        etc.

I have added the new struts core jar, the dojo plugin jar, and the new xwork 
jar to my lib directory. I peeked at the stack. In the tree case the line

270        boolean generateId = 
!(Boolean)stack.getContext().get(Head.PARSE_CONTENT);

In Tree causes the error. stack.getContext() is an empty map and the attempt to 
cast the null result of the lookup to a Boolean and negate it throws the 
exception. Presumably the wrong context is being returned, or perhaps The wrong 
stack was passed to the bean. The jsp snippit that is causing the error is

...
<%@ taglib prefix="sx" uri="/struts-dojo-tags" %>
...
<head>
<jsp:include page="/ajax/commonInclude.jsp"/>
</head>
...

                        <sx:tree rootNode="%{root}"
                                childCollectionProperty="directories" 
nodeIdProperty="id"
                                
nodeTitleProperty="name"treeSelectedTopic="nodeSelected">
                        </sx:tree>
...

What must I do to get dojo working? Am I missing something configuration wise? 
The examples work for me. Is there somewhere I have to enable or configure the 
dojo plugin?

Thanks

- Nick Engelking


********************
NOTICE OF CONFIDENTIALITY
This communication including any information transmitted with it is 
intended only for the use of the addressees and is confidential. 
If you are not an intended recipient or responsible for delivering 
the message to an intended recipient, any review, disclosure, 
conversion to hard copy, dissemination, reproduction or other use 
of any part of this communication is strictly prohibited, as is the 
taking or omitting of any action in reliance upon this communication. 
If you receive this communication in error or without authorization 
please notify us immediately by return e-mail or otherwise and 
permanently delete the entire communication from any computer, 
disk drive, or other storage medium.

If the above disclaimer is not properly readable, it can be found at 
www.td.com/legal
                                                           
AVERTISSEMENT DE CONFIDENTIALITE                   
Ce courriel, ainsi que tout renseignement ci-inclus, destiné uniquement 
aux destinataires susmentionnés,  est confidentiel.  Si vous 
n’êtes pas le destinataire prévu ou un agent responsable de la 
livraison de ce courriel, tout examen, divulgation, copie, impression, 
reproduction, distribution, ou autre utilisation d’une partie de ce 
courriel est strictement interdit de même que toute intervention ou 
abstraction à cet égard.  Si vous avez reçu ce message par erreur ou 
sans autorisation, veuillez en aviser immédiatement l’expéditeur par 
retour de courriel ou par un autre moyen et supprimer immédiatement 
cette communication entière de tout système électronique.

Si l'avis de non-responsabilité ci-dessus n'est pas lisible, vous 
pouvez le consulter à www.td.com/francais/legale

Reply via email to