SpamFilter requires these two lines to be in your editor (e.g. plain.jsp):

  <%=SpamFilter.insertInputFields( pageContext )%>
<input name="<%=SpamFilter.getHashFieldName(request)%>" type="hidden" value="<c:out value='${lastchange}' />" />

Yes, the latter should be merged into the former and made a proper JSP tag. The MissingHash catch comes from the latter line.

(I know, I should really document our spam filter better. I've been meaning to write a conference paper on it - it's really quite nifty, even if I say so myself.)

/Janne

On 3 May 2008, at 22:00, Terry Steichen wrote:

Update:

Well, I've got the editing working with 2.6.2. What I had to do is (1)
remove from EditTemplate.jsp the <wiki:Include
page='PageActionsBottom.jsp' />, and (2) replace Edit.jsp with the
earlier version (that didn't call all the SpamFilter functions - though
SpamFilter itself is initialized and presumably operating).

Not pretty, of course, but it does appear to work.  I tried to figure
out the problems with SpamFilter's hashing, but, to be frank, this
module has gotten so complicated (source over 21 pages printed out) that
I simply didn't have the time or energy.  Maybe later.

I have no idea why the PageActionsBottom,jsp caused the error it did,
because lots of other modules (including commonheader.jsp) use the JSTL syntax-based variables (that appeared to be the source of the problem).
I still have problems (probably for similar reasons) with
Preferences.jsp. (And I did verify that the $prefs stuff was properly
initialized and is accessible via JSTL syntax.)

My application uses only a subset of the JSPWiki modules, so I can (and will) defer figuring out the incompatibilities of some of the remaining
modules for a while.

Terry


On Sat, 2008-05-03 at 07:05 -0400, Terry Steichen wrote:

Dirk,

Since I'm running a plain install of 2.6.2 in parallel (same container, same OS, same time) with the one I'm using to port the application, and that plain install works fine, I suspect the problem isn't with JSPWiki
per se.  That conclusion is strengthened by the fact that porting
install uses NEARLY all of the same modules as the plain one.

A big part of the diagnostic process is simply getting to the point that
I understand what specific changes in code and approach were made in
2.6.2 (more specific than the changelog). I can't just start over again with my application; I just have to figure out more precisely what has
changed and how to best accommodate it (and hopefully, future JSPWiki
changes).

Anyway thanks for your (and others') input.  I'm still plugging away,
learning more about JSTL (and JSPWiki innards) in the process.

Terry


On Sat, 2008-05-03 at 09:18 +0200, Dirk Frederickx wrote:

Terry,

Try setting the user prefs by "Saving" some settings in a client
browser.  And then check whether the 'prefs' are set properly.
If this works, we may have a problem with the initialisation sequence
of the 'prefs' variable.


dirk

On Fri, May 2, 2008 at 11:32 PM, Janne Jalkanen
<[EMAIL PROTECTED]> wrote:
2008-05-02 16:34:56,406 [http-8080-Processor23] INFO SpamLog
       TC6:/TC6/Edit.jsp TC6:http://localhost:8080/TC6/Edit.jsp -
REJECTED MissingHash IHTJDA 0:0:0:0:0:0:0:1 "TCMain" this is the
       page text I tried to edit:\r\n\r\nTerry22

Is there a diagnostic procedure to check the JSTL data and see if it is
indeed getting initialized?

Try turning off the SpamFilter (remove it from filters.xml). If that helps,
then check if you've modified your editor jsp (e.g. plain.jsp) and
accidentally removed one of the necessary fields.

Probably, however, this is again the EL just failing.

Also, I'm running a parallel 'clean' version of 2.6.2 and it works just fine. Since I'm using nearly all of the 2.6.2 modules in the version I'm updating my application in, I have a hunch (but only a hunch) that the problem is either in jspwiki.properties or some other externality.

This really sounds like that for some reason your container is turning the EL off. Try copying a pristine web.xml to your WEB-INF to make sure there
are no typos.

/Janne


Reply via email to