I bet your error is caused by not including the create
session directive in the namespaces declaration.
Anyway here's a very simple little login thingy, it
takes stuff from a form and logs you in or redirects
you back.
<?xml version="1.0"?>
<?cocoon-process type="xsp"?>
<?cocoon-process type="xslt"?>
<?xml-stylesheet href="login-html.xsl"
type="text/xsl"?>
<?xml-stylesheet href="login-wml.xsl" type="text/xsl"
media="wap"?>
<?xml-stylesheet href="page-chtml.xsl" type="text/xsl"
media="imode"?>
<xsp:page language="java"
xmlns:esql="http://apache.org/cocoon/SQL/v2"
xmlns:xsp="http://www.apache.org/1999/XSP/Core"
xmlns:session="http://www.apache.org/1999/XSP/Session"
create-session="true">
<xsp:logic>
String sqlstring = "";
String username ="";
String passwd = "";
String UID="";
final static char APOS = (char)39;
final static char BLANK = (char)32;
</xsp:logic>
<page>
<xsp:logic>
username = request.getParameter("username");
passwd = request.getParameter("passwd");
(username.replace(APOS,BLANK)).trim();
(passwd.replace(APOS,BLANK)).trim();
<!--Get rid of case sensitivity-->
username.toLowerCase();
passwd.toLowerCase();
sqlstring = "SELECT * FROM users WHERE user_name =
'" + username + "'";
</xsp:logic>
<esql:connection>
<esql:pool>project</esql:pool>
<esql:execute-query>
<esql:query>
<xsp:expr>sqlstring</xsp:expr>
</esql:query>
<esql:results>
<esql:row-results>
<xsp:logic>
if(passwd.equals(<esql:get-string
column="passwd"/>))
{
<!--Set the session variable
UID to the users
UID and jump to their page-->
<session:set-attribute
name="UID">
<esql:get-string
column="uid"/>
</session:set-attribute>
response.sendRedirect(response.encodeRedirectURL("menupage.xml"));
}
else
response.sendRedirect("login.xml?error=1");
</xsp:logic>
</esql:row-results>
</esql:results>
<esql:no-results>
<xsp:logic>response.sendRedirect("login.xml?error=1");</xsp:logic>
</esql:no-results>
</esql:execute-query>
</esql:connection>
<link href="login.xml">Try Again</link>
</page>
</xsp:page>
Then on every page which you should be logged in to
see include this
<!--#####################################-->
<!--Check if User has logged in-->
try{<session:get-attribute name="UID"/>;}
catch (NullPointerException e)
{
response.sendRedirect("login.xml");
}
<!--#####################################-->
--- Truhann van der Poel
<[EMAIL PROTECTED]> wrote:
> I am new to Cocoon and sessions. Are using C1.8.2.
>
> Can anybody send a beginner sample (or pointer to
> help-documentation) to
> setup/save/retrieve variables from a session.
> All the <session:xxx> tags in my xsp page create
> NullPointer's.
>
> Truhann
>
>
---------------------------------------------------------------------
> Please check that your question has not already been
> answered in the
> FAQ before posting.
> <http://xml.apache.org/cocoon/faqs.html>
>
> To unsubscribe, e-mail:
> <[EMAIL PROTECTED]>
> For additional commands, e-mail:
> <[EMAIL PROTECTED]>
>
__________________________________________________
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35
a year! http://personal.mail.yahoo.com/
---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>
To unsubscribe, e-mail: <[EMAIL PROTECTED]>
For additional commands, e-mail: <[EMAIL PROTECTED]>