You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by "Yee, Richard K,,DMDCWEST" <Ye...@osd.pentagon.mil> on 2003/12/09 01:38:35 UTC

RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Caroline,
Imposible? Look at the HTML that is generated by the JSP page. I think you
will see that it returns "null".
Take a look at the JavaDoc for HttpServletRequest.getRemoteUser();

getRemoteUser
public java.lang.String getRemoteUser()
Returns the login of the user making this request, if the user has been
authenticated, or null if the user has not been authenticated. Whether the
user name is sent with each subsequent request depends on the browser and
type of authentication. Same as the value of the CGI variable REMOTE_USER.

Returns: a String specifying the login of the user making this request, or
null 

As the JavaDoc says: "Whether the user name is sent with each subsequent
request depends on the browser and type of authentication."  Are you using
basic authentication or are you authenticating the user yourself?
If you are doing it yourself (ie. through a db lookup) then the server
doesn't know about the user being authenticated and will return null.

Regards,

Richard
-----Original Message-----
From: Caroline Jen [mailto:jiapei_jen@yahoo.com] 
Sent: Monday, December 08, 2003 2:56 PM
To: Struts Users Mailing List
Subject: RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces
sAction


I pass two hidden fields: username and keyName at the
same time.  The keyName is passed and with the correct
value in it.  The username is passed but its value
turns out to be a null.

It is impossible for request.getRemoteUser(); in my
JSP returning a null.  (see code below) Before it
reaches request.getRemoteUser(); the user has already
been successfully logged in with a valid name.

<req:isUserInRole role="editor">
<html:form action="/find/Category">
<TR>
<TD class="option">
<% String username = request.getRemoteUser();%>
<html:hidden property="keyName"
value="journal_category"/>
<html:hidden property="username"
value="<%=username%>"/>
<html:submit>View Articles</html:submit>
</TD>
</TR>
</html:form>
</req:isUserInRole>
--- "Yee, Richard K,,DMDCWEST"
<Ye...@osd.pentagon.mil> wrote:
> Caroline,
> Are you having problems with the username or the
> keyName hidden variable? If
> it is the username, then I'd suspect that
> request.getRemoteUser() in your
> JSP is returning null.
> 
> Regards,
> 
> Richard
> 
> -----Original Message-----
> From: Caroline Jen [mailto:jiapei_jen@yahoo.com]
> Sent: Monday, December 08, 2003 1:32 PM
> To: Struts Users Mailing List
> Subject: Re: Please Help! Unable to Pass A Hidden
> Field To
> scaffold.ProcessAction
> 
> 
> I did not mess up lowercase and uppercase of the
> hidden field I want to pass from my JSP to the scaffold.ProcessAction.  
> If it had been the lowercase/uppercase problem, I would
> have gotten a message
> saying that the variable could not be recognized.  
> 
> I pass two hidden fields at the same time.  One of
> them is successfully passed with correct value.  The
> other is passed but its value shows a 'null' in the 
> scaffold.ProcessAction. What could go wrong?  Let me show my code 
> again:
> 
> Two hidden fields: username and keyName are passed
> from a JSP via a SUBMIT button:
> 
> <req:isUserInRole role="editor">
> <html:form action="/find/Category">
> <% String username = request.getRemoteUser();%>
> <html:hidden property="keyName"
> value="journal_category"/>
> <html:hidden property="username"
> value="<%=username%>"/>
> <html:submit>View Articles</html:submit>
> </html:form>
> </req:isUserInRole>
> 
> and an action mapping:
> 
>     <action
>         roles="editor"
>         path="/find/Category"
>        
> type="org.apache.struts.scaffold.ProcessAction"
>        
>
parameter="org.apache.artimus.article.FindEditorData"
>         name="articleForm"
>         scope="request"
>         validate="false">
>        <forward
>             name="success"
>             path=".article.Result"/>
>     </action>
> 
> The value of the 'username' is found to be a 'null'
> in
> the FindEditorData.java while the value of keyName
> is successfully
> retrieved.  In the browser, I got:
> 
> name=null; kn=journal_category; kv=null
> 
> The code of my FindEditorData is shown below:
> 
> public final class FindEditorData extends Bean
> {
>    public Object execute() throws Exception
>    {
> 
>    // Obtain username 
>    String username = getUsername();
>       
>    EditorService service = new EditorService();
>    String value = service.findEditorData( username
> );
> 
>    String property = getKeyName();
>         
>         if (( null==property ) || ( null==value )) 
>         {
>             StringBuffer sb = new StringBuffer();
>             sb.append( "name=" );
>             sb.append( username );
>             sb.append( "; kn=" );
>             sb.append( property );
>             sb.append( "; kv=" );
>             sb.append( value );
>             throw new ParameterException(
> sb.toString() );
>         }
> 
>         ResultList list = new ResultListBase
>         (
> 
>             Access.findByProperty(
> this,property,value
> )
> 
>         );
>         list.setLegend( property,value );
> 
>         return new ProcessResultBase( list );
> 
>    } // end execute
> 
> } // End FindEditorData
>   
> 
> 
> --- Caroline Jen <ji...@yahoo.com> wrote:
> > I want to pass two hidden fields; username and
> > keyName
> > from a JSP via a SUBMIT button:
> > 
> > <req:isUserInRole role="editor">
> > <html:form action="/find/Category">
> > <% String username = request.getRemoteUser();%> <html:hidden 
> > property="keyName" value="journal_category"/>
> > <html:hidden property="username"
> > value="<%=username%>"/>
> > <html:submit>View Articles</html:submit>
> > </html:form>
> > </req:isUserInRole>
> > 
> > and an action mapping:
> > 
> >     <action
> >         roles="editor"
> >         path="/find/Category"
> >        
> > type="org.apache.struts.scaffold.ProcessAction"
> >        
> >
>
parameter="org.apache.artimus.article.FindEditorData"
> >         name="articleForm"
> >         scope="request"
> >         validate="false">
> >        <forward
> >             name="success"
> >             path=".article.Result"/>
> >     </action>
> > 
> > How come the username is not passed to the
> FindEditorData.java while
> > the keyName is successfully
> > passed.  In the browser, I got:
> > 
> > name=null; kn=journal_category; kv=null
> > 
> > The code of my FindEditorData is shown below:
> > 
> > public final class FindEditorData extends Bean
> > {
> >    public Object execute() throws Exception
> >    {
> > 
> >    // Obtain username 
> >    String username = getUsername();
> >       
> >    EditorService service = new EditorService();
> >    String value = service.findEditorData( username
> > );
> > 
> >    String property = getKeyName();
> >         
> >         if (( null==property ) || ( null==value ))
> 
> >         {
> >             StringBuffer sb = new StringBuffer();
> >             sb.append( "name=" );
> >             sb.append( username );
> >             sb.append( "; kn=" );
> >             sb.append( property );
> >             sb.append( "; kv=" );
> >             sb.append( value );
> >             throw new ParameterException(
> > sb.toString() );
> >         }
> > 
> >         ResultList list = new ResultListBase
> >         (
> > 
> >             Access.findByProperty(
> > this,property,value
> > )
> > 
> >         );
> >         list.setLegend( property,value );
> > 
> >         return new ProcessResultBase( list );
> 
=== message truncated ===


__________________________________
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing. http://photos.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Posted by Richard Yee <ry...@cruzio.com>.
Caroline,
Did you check the result of getRemoteUser(). Does it return null or "null"? 
If so, it's not a problem with your hidden form variables,.

-Richard

At 05:29 PM 12/8/2003, you wrote:
>I use container-managed authentication.
>
>
>
>--- "Yee, Richard K,,DMDCWEST"
><Ye...@osd.pentagon.mil> wrote:
> > Caroline,
> > Imposible? Look at the HTML that is generated by the
> > JSP page. I think you
> > will see that it returns "null".
> > Take a look at the JavaDoc for
> > HttpServletRequest.getRemoteUser();
> >
> > getRemoteUser
> > public java.lang.String getRemoteUser()
> > Returns the login of the user making this request,
> > if the user has been
> > authenticated, or null if the user has not been
> > authenticated. Whether the
> > user name is sent with each subsequent request
> > depends on the browser and
> > type of authentication. Same as the value of the CGI
> > variable REMOTE_USER.
> >
> > Returns: a String specifying the login of the user
> > making this request, or
> > null
> >
> > As the JavaDoc says: "Whether the user name is sent
> > with each subsequent
> > request depends on the browser and type of
> > authentication."  Are you using
> > basic authentication or are you authenticating the
> > user yourself?
> > If you are doing it yourself (ie. through a db
> > lookup) then the server
> > doesn't know about the user being authenticated and
> > will return null.
> >
> > Regards,
> >
> > Richard
> > -----Original Message-----
> > From: Caroline Jen [mailto:jiapei_jen@yahoo.com]
> > Sent: Monday, December 08, 2003 2:56 PM
> > To: Struts Users Mailing List
> > Subject: RE: Please Help! Unable to Pass A Hidden
> > Field To scaffold.Proces
> > sAction
> >
> >
> > I pass two hidden fields: username and keyName at
> > the
> > same time.  The keyName is passed and with the
> > correct
> > value in it.  The username is passed but its value
> > turns out to be a null.
> >
> > It is impossible for request.getRemoteUser(); in my
> > JSP returning a null.  (see code below) Before it
> > reaches request.getRemoteUser(); the user has
> > already
> > been successfully logged in with a valid name.
> >
> > <req:isUserInRole role="editor">
> > <html:form action="/find/Category">
> > <TR>
> > <TD class="option">
> > <% String username = request.getRemoteUser();%>
> > <html:hidden property="keyName"
> > value="journal_category"/>
> > <html:hidden property="username"
> > value="<%=username%>"/>
> > <html:submit>View Articles</html:submit>
> > </TD>
> > </TR>
> > </html:form>
> > </req:isUserInRole>
> > --- "Yee, Richard K,,DMDCWEST"
> > <Ye...@osd.pentagon.mil> wrote:
> > > Caroline,
> > > Are you having problems with the username or the
> > > keyName hidden variable? If
> > > it is the username, then I'd suspect that
> > > request.getRemoteUser() in your
> > > JSP is returning null.
> > >
> > > Regards,
> > >
> > > Richard
> > >
> > > -----Original Message-----
> > > From: Caroline Jen [mailto:jiapei_jen@yahoo.com]
> > > Sent: Monday, December 08, 2003 1:32 PM
> > > To: Struts Users Mailing List
> > > Subject: Re: Please Help! Unable to Pass A Hidden
> > > Field To
> > > scaffold.ProcessAction
> > >
> > >
> > > I did not mess up lowercase and uppercase of the
> > > hidden field I want to pass from my JSP to the
> > scaffold.ProcessAction.
> > > If it had been the lowercase/uppercase problem, I
> > would
> > > have gotten a message
> > > saying that the variable could not be recognized.
> >
> > >
> > > I pass two hidden fields at the same time.  One of
> > > them is successfully passed with correct value.
> > The
> > > other is passed but its value shows a 'null' in
> > the
> > > scaffold.ProcessAction. What could go wrong?  Let
> > me show my code
> > > again:
> > >
> > > Two hidden fields: username and keyName are passed
> > > from a JSP via a SUBMIT button:
> > >
> > > <req:isUserInRole role="editor">
> > > <html:form action="/find/Category">
> > > <% String username = request.getRemoteUser();%>
> > > <html:hidden property="keyName"
> > > value="journal_category"/>
> > > <html:hidden property="username"
> > > value="<%=username%>"/>
> > > <html:submit>View Articles</html:submit>
> > > </html:form>
> > > </req:isUserInRole>
> > >
> > > and an action mapping:
> > >
> > >     <action
> > >         roles="editor"
> > >         path="/find/Category"
> > >
> > > type="org.apache.struts.scaffold.ProcessAction"
> > >
> > >
> >
>parameter="org.apache.artimus.article.FindEditorData"
> > >         name="articleForm"
> > >         scope="request"
> > >         validate="false">
> > >        <forward
> > >             name="success"
> > >             path=".article.Result"/>
> > >     </action>
> > >
> > > The value of the 'username' is found to be a
> > 'null'
> > > in
> > > the FindEditorData.java while the value of keyName
> > > is successfully
> > > retrieved.  In the browser, I got:
> > >
> > > name=null; kn=journal_category; kv=null
> > >
> > > The code of my FindEditorData is shown below:
> > >
> > > public final class FindEditorData extends Bean
> > > {
> > >    public Object execute() throws Exception
> > >    {
> > >
> > >    // Obtain username
> > >    String username = getUsername();
> > >
> > >    EditorService service = new EditorService();
> > >    String value = service.findEditorData( username
> > > );
> > >
> > >    String property = getKeyName();
> > >
> > >         if (( null==property ) || ( null==value ))
> >
> > >         {
> > >             StringBuffer sb = new StringBuffer();
> > >             sb.append( "name=" );
> > >             sb.append( username );
> > >             sb.append( "; kn=" );
> > >             sb.append( property );
> > >             sb.append( "; kv=" );
> > >             sb.append( value );
> > >             throw new ParameterException(
> > > sb.toString() );
> > >         }
> > >
> > >         ResultList list = new ResultListBase
> > >         (
> > >
> > >             Access.findByProperty(
> > > this,property,value
> > > )
> > >
> > >         );
> > >         list.setLegend( property,value );
> > >
> > >         return new ProcessResultBase( list );
> > >
> > >    } // end execute
> > >
> > > } // End FindEditorData
> > >
> > >
> > >
> >
>=== message truncated ===
>
>
>__________________________________
>Do you Yahoo!?
>Protect your identity with Yahoo! Mail AddressGuard
>http://antispam.yahoo.com/whatsnewfree
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: struts-user-help@jakarta.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Posted by Caroline Jen <ji...@yahoo.com>.
I did another test.  I took out those data access
activities in the FindEditorData.java and ran the
application.  The conclusion is that those few lines
of data access activities have nothing to do with the
value of the 'username' becoming null in the
FindEditorData.java.

-Caroline
--- Richard Yee <ry...@yahoo.com> wrote:
> Caroline,
> As a sanity check, in your bean, initialize the
> username variable to something ie. "XXXXXX". and
> re-run your app. This will show if your setUsername
> is
> ever called.
> 
> -Richard
> 
> --- Caroline Jen <ji...@yahoo.com> wrote:
> > I do not fully understand what you say about null
> or
> > "null".  Anyway, I did try to write out values in
> > the
> > FindEditorData.java.  What is written out in the
> > browser is:
> > 
> > name=null; kn=journal_category; kv=null
> > 
> > And the way I try to write out those crucial
> fields
> > is
> > shown below:
> > 
> > // package and import statements omitted
> > public final class FindEditorData extends Bean
> > {
> >    public Object execute() throws Exception
> >    {
> > 
> >    // Obtain username 
> >    String username = getUsername();
> >       
> >    EditorService service = new EditorService();
> >    String value = service.findEditorData( username
> > );
> > 
> >         String property = getKeyName();
> >         
> >         if (( null==property ) || ( null==value ))
> 
> >         {
> >             StringBuffer sb = new StringBuffer();
> >             sb.append( "name=" );
> >             sb.append( username );
> >             sb.append( "; kn=" );
> >             sb.append( property );
> >             sb.append( "; kv=" );
> >             sb.append( value );
> >             throw new ParameterException(
> > sb.toString() );
> >         }
> > 
> >         ResultList list = new ResultListBase
> >         (
> > 
> >             Access.findByProperty(
> > this,property,value
> > )
> > 
> >         );
> >         list.setLegend( property,value );
> > 
> >         return new ProcessResultBase( list );
> > 
> >    } // end execute
> > 
> > } // End FindEditorData
> > 
> > --- Richard Yee <ry...@yahoo.com> wrote:
> > > Caroline,
> > > In your FindEditorData.java class, is the value
> > for
> > > your username variable null or "null"?  If it is
> > > null,
> > > then you are reading the wrong request parameter
> > > since
> > > request.getParameter() will return null if the
> > > parameter doesn't exist. If the String value is
> > > "null", then you have a problem with
> > getRemoteUser()
> > > Why don't you dump request parameters that you
> are
> > > getting in your FindEditorData?
> > > 
> > > Hidden input tags work fine. 
> > > 
> > > Regards,
> > > 
> > > Richard
> > > --- Caroline Jen <ji...@yahoo.com> wrote:
> > > > Hi, I think that we are in different time
> zones.
> > > > 
> > > > As you have mentioned, I, too, suspected that
> > the
> > > > statement in my JSP:
> > > > 
> > > > request.getRemoteUser(); 
> > > > 
> > > > returns nothing.  Therefore, I did a test in
> my
> > > JSP.
> > > > 
> > > > In addition to request.getRemoteUser(); I
> > created
> > > > another String manually:
> > > > 
> > > > <req:isUserInRole role="editor">
> > > > <% 
> > > >    String username = request.getRemoteUser(); 
> > > >    String userrole = "author"; 
> > > > %>   
> > > > <% out.println("The user name is: " + username
> > > > +".");
> > > > %>
> > > > <% out.println("The role is: " + userrole
> +".");
> > > %>
> > > > </req:isUserInRole>
> > > > 
> > > > And the browser shows:
> > > > 
> > > > The user name is: Gloria Jen.  The role is:
> > > author. 
> > > > 
> > > > Gloria Jen is the name that I provided while
> > > logging
> > > > on and authenticated by the container. 
> > Therefore,
> > > > the
> > > > request.getRemoteUser(); does not return a
> null.
> > 
> > > > And
> > > > I hope that it means I am not passing a null
> > value
> > > > when I use the hidden field technique.
> > > > 
> > > > Then, I pass two hidden fields (with value in
> > > them)
> > > > from my JSP to a Java class
> > (FindEditorData.java),
> > > > which is of scaffold.ProcessAction type.  One
> of
> > > the
> > > > field is passed with its value correctly
> > > retrieved. 
> > > > The other field is passed with its value found
> > to
> > > be
> > > > null.
> > > > 
> > > > What could go wrong?  I have been thinking
> about
> > > it
> > > > for days and so do those who try to help me.  
> > > > 
> > > > <req:isUserInRole role="editor">
> > > > <html:form action="/find/Category">
> > > > <% 
> > > >    String username = request.getRemoteUser(); 
> > > >    String userrole = "author"; 
> > > > %>   
> > > > <%out.println("The user name is: " + username
> > > > +".");%>
> > > > <%out.println("The role is: " + userrole
> > +".");%>
> > > > <html:hidden property="keyName"
> > > > value="journal_category"/>
> > > > <html:hidden property="username"
> > > > value="<%=username%>"/>
> > > > <html:submit>View Articles</html:submit>
> > > > </html:form>
> > > > </req:isUserInRole> 
> > > > 
> > > > -Caroline
> > > > --- "Yee, Richard K,,DMDCWEST"
> > > > <Ye...@osd.pentagon.mil> wrote:
> > > > > Caroline,
> > > > > Imposible? Look at the HTML that is
> generated
> > by
> > > > the
> > > > > JSP page. I think you
> > > > > will see that it returns "null".
> > > > > Take a look at the JavaDoc for
> > > > > HttpServletRequest.getRemoteUser();
> > > > > 
> > > > > getRemoteUser
> > > > > public java.lang.String getRemoteUser()
> > > > > Returns the login of the user making this
> > > request,
> > > > > if the user has been
> > > > > authenticated, or null if the user has not
> > been
> > > > > authenticated. Whether the
> > > > > user name is sent with each subsequent
> request
> > > > > depends on the browser and
> > > > > type of authentication. Same as the value of
> 
=== message truncated ===


__________________________________
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing.
http://photos.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Posted by Caroline Jen <ji...@yahoo.com>.
I followed your advice.  In the Bean.java, I did the
following:

    private String username = "natalie";
    public String getUsername() {
        return this.username;
    }
    public void setUsername(String username) {
        this.username = username;
    }

and I compiled all the relevant classes, re-run the
application, the FindEditorData.java writes out the
following in the browser:

The process did not complete. Details should follow. 
name=natalie; kn=journal_category; kv=null 

Now, the question is why the Bean.java does not pick
up the value of the hidden field 'username' from my
JSP while successfully picks up the value of the other
hidden field 'keyName'.

There is some data processing activities going on in
the FindEditorData.java:

   String username = getUsername();
   EditorService service = new EditorService();
   String value = service.findEditorData( username );

The above data accessing codes had been tested outside
the environment of the application (the codes did what
I expected them to do without problem) before they
were integrated into the application.

-Caroline
--- Richard Yee <ry...@yahoo.com> wrote:
> Caroline,
> As a sanity check, in your bean, initialize the
> username variable to something ie. "XXXXXX". and
> re-run your app. This will show if your setUsername
> is
> ever called.
> 
> -Richard
> 
> --- Caroline Jen <ji...@yahoo.com> wrote:
> > I do not fully understand what you say about null
> or
> > "null".  Anyway, I did try to write out values in
> > the
> > FindEditorData.java.  What is written out in the
> > browser is:
> > 
> > name=null; kn=journal_category; kv=null
> > 
> > And the way I try to write out those crucial
> fields
> > is
> > shown below:
> > 
> > // package and import statements omitted
> > public final class FindEditorData extends Bean
> > {
> >    public Object execute() throws Exception
> >    {
> > 
> >    // Obtain username 
> >    String username = getUsername();
> >       
> >    EditorService service = new EditorService();
> >    String value = service.findEditorData( username
> > );
> > 
> >         String property = getKeyName();
> >         
> >         if (( null==property ) || ( null==value ))
> 
> >         {
> >             StringBuffer sb = new StringBuffer();
> >             sb.append( "name=" );
> >             sb.append( username );
> >             sb.append( "; kn=" );
> >             sb.append( property );
> >             sb.append( "; kv=" );
> >             sb.append( value );
> >             throw new ParameterException(
> > sb.toString() );
> >         }
> > 
> >         ResultList list = new ResultListBase
> >         (
> > 
> >             Access.findByProperty(
> > this,property,value
> > )
> > 
> >         );
> >         list.setLegend( property,value );
> > 
> >         return new ProcessResultBase( list );
> > 
> >    } // end execute
> > 
> > } // End FindEditorData
> > 
> > --- Richard Yee <ry...@yahoo.com> wrote:
> > > Caroline,
> > > In your FindEditorData.java class, is the value
> > for
> > > your username variable null or "null"?  If it is
> > > null,
> > > then you are reading the wrong request parameter
> > > since
> > > request.getParameter() will return null if the
> > > parameter doesn't exist. If the String value is
> > > "null", then you have a problem with
> > getRemoteUser()
> > > Why don't you dump request parameters that you
> are
> > > getting in your FindEditorData?
> > > 
> > > Hidden input tags work fine. 
> > > 
> > > Regards,
> > > 
> > > Richard
> > > --- Caroline Jen <ji...@yahoo.com> wrote:
> > > > Hi, I think that we are in different time
> zones.
> > > > 
> > > > As you have mentioned, I, too, suspected that
> > the
> > > > statement in my JSP:
> > > > 
> > > > request.getRemoteUser(); 
> > > > 
> > > > returns nothing.  Therefore, I did a test in
> my
> > > JSP.
> > > > 
> > > > In addition to request.getRemoteUser(); I
> > created
> > > > another String manually:
> > > > 
> > > > <req:isUserInRole role="editor">
> > > > <% 
> > > >    String username = request.getRemoteUser(); 
> > > >    String userrole = "author"; 
> > > > %>   
> > > > <% out.println("The user name is: " + username
> > > > +".");
> > > > %>
> > > > <% out.println("The role is: " + userrole
> +".");
> > > %>
> > > > </req:isUserInRole>
> > > > 
> > > > And the browser shows:
> > > > 
> > > > The user name is: Gloria Jen.  The role is:
> > > author. 
> > > > 
> > > > Gloria Jen is the name that I provided while
> > > logging
> > > > on and authenticated by the container. 
> > Therefore,
> > > > the
> > > > request.getRemoteUser(); does not return a
> null.
> > 
> > > > And
> > > > I hope that it means I am not passing a null
> > value
> > > > when I use the hidden field technique.
> > > > 
> > > > Then, I pass two hidden fields (with value in
> > > them)
> > > > from my JSP to a Java class
> > (FindEditorData.java),
> > > > which is of scaffold.ProcessAction type.  One
> of
> > > the
> > > > field is passed with its value correctly
> > > retrieved. 
> > > > The other field is passed with its value found
> > to
> > > be
> > > > null.
> > > > 
> > > > What could go wrong?  I have been thinking
> about
> > > it
> > > > for days and so do those who try to help me.  
> > > > 
> > > > <req:isUserInRole role="editor">
> > > > <html:form action="/find/Category">
> > > > <% 
> > > >    String username = request.getRemoteUser(); 
> > > >    String userrole = "author"; 
> > > > %>   
> > > > <%out.println("The user name is: " + username
> > > > +".");%>
> > > > <%out.println("The role is: " + userrole
> > +".");%>
> > > > <html:hidden property="keyName"
> > > > value="journal_category"/>
> > > > <html:hidden property="username"
> > > > value="<%=username%>"/>
> > > > <html:submit>View Articles</html:submit>
> > > > </html:form>
> > > > </req:isUserInRole> 
> > > > 
> > > > -Caroline
> > > > --- "Yee, Richard K,,DMDCWEST"
> > > > <Ye...@osd.pentagon.mil> wrote:
> > > > > Caroline,
> > > > > Imposible? Look at the HTML that is
> generated
> > by
> > > > the
> > > > > JSP page. I think you
> > > > > will see that it returns "null".
> > > > > Take a look at the JavaDoc for
> > > > > HttpServletRequest.getRemoteUser();
> > > > > 
> > > > > getRemoteUser
> > > > > public java.lang.String getRemoteUser()
> > > > > Returns the login of the user making this
> > > request,
> > > > > if the user has been
> > > > > authenticated, or null if the user has not
> > been
> > > > > authenticated. Whether the
> > > > > user name is sent with each subsequent
> request
> > > > > depends on the browser and
> > > > > type of authentication. Same as the value of
> 
=== message truncated ===


__________________________________
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing.
http://photos.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Posted by Richard Yee <ry...@yahoo.com>.
Caroline,
As a sanity check, in your bean, initialize the
username variable to something ie. "XXXXXX". and
re-run your app. This will show if your setUsername is
ever called.

-Richard

--- Caroline Jen <ji...@yahoo.com> wrote:
> I do not fully understand what you say about null or
> "null".  Anyway, I did try to write out values in
> the
> FindEditorData.java.  What is written out in the
> browser is:
> 
> name=null; kn=journal_category; kv=null
> 
> And the way I try to write out those crucial fields
> is
> shown below:
> 
> // package and import statements omitted
> public final class FindEditorData extends Bean
> {
>    public Object execute() throws Exception
>    {
> 
>    // Obtain username 
>    String username = getUsername();
>       
>    EditorService service = new EditorService();
>    String value = service.findEditorData( username
> );
> 
>         String property = getKeyName();
>         
>         if (( null==property ) || ( null==value )) 
>         {
>             StringBuffer sb = new StringBuffer();
>             sb.append( "name=" );
>             sb.append( username );
>             sb.append( "; kn=" );
>             sb.append( property );
>             sb.append( "; kv=" );
>             sb.append( value );
>             throw new ParameterException(
> sb.toString() );
>         }
> 
>         ResultList list = new ResultListBase
>         (
> 
>             Access.findByProperty(
> this,property,value
> )
> 
>         );
>         list.setLegend( property,value );
> 
>         return new ProcessResultBase( list );
> 
>    } // end execute
> 
> } // End FindEditorData
> 
> --- Richard Yee <ry...@yahoo.com> wrote:
> > Caroline,
> > In your FindEditorData.java class, is the value
> for
> > your username variable null or "null"?  If it is
> > null,
> > then you are reading the wrong request parameter
> > since
> > request.getParameter() will return null if the
> > parameter doesn't exist. If the String value is
> > "null", then you have a problem with
> getRemoteUser()
> > Why don't you dump request parameters that you are
> > getting in your FindEditorData?
> > 
> > Hidden input tags work fine. 
> > 
> > Regards,
> > 
> > Richard
> > --- Caroline Jen <ji...@yahoo.com> wrote:
> > > Hi, I think that we are in different time zones.
> > > 
> > > As you have mentioned, I, too, suspected that
> the
> > > statement in my JSP:
> > > 
> > > request.getRemoteUser(); 
> > > 
> > > returns nothing.  Therefore, I did a test in my
> > JSP.
> > > 
> > > In addition to request.getRemoteUser(); I
> created
> > > another String manually:
> > > 
> > > <req:isUserInRole role="editor">
> > > <% 
> > >    String username = request.getRemoteUser(); 
> > >    String userrole = "author"; 
> > > %>   
> > > <% out.println("The user name is: " + username
> > > +".");
> > > %>
> > > <% out.println("The role is: " + userrole +".");
> > %>
> > > </req:isUserInRole>
> > > 
> > > And the browser shows:
> > > 
> > > The user name is: Gloria Jen.  The role is:
> > author. 
> > > 
> > > Gloria Jen is the name that I provided while
> > logging
> > > on and authenticated by the container. 
> Therefore,
> > > the
> > > request.getRemoteUser(); does not return a null.
> 
> > > And
> > > I hope that it means I am not passing a null
> value
> > > when I use the hidden field technique.
> > > 
> > > Then, I pass two hidden fields (with value in
> > them)
> > > from my JSP to a Java class
> (FindEditorData.java),
> > > which is of scaffold.ProcessAction type.  One of
> > the
> > > field is passed with its value correctly
> > retrieved. 
> > > The other field is passed with its value found
> to
> > be
> > > null.
> > > 
> > > What could go wrong?  I have been thinking about
> > it
> > > for days and so do those who try to help me.  
> > > 
> > > <req:isUserInRole role="editor">
> > > <html:form action="/find/Category">
> > > <% 
> > >    String username = request.getRemoteUser(); 
> > >    String userrole = "author"; 
> > > %>   
> > > <%out.println("The user name is: " + username
> > > +".");%>
> > > <%out.println("The role is: " + userrole
> +".");%>
> > > <html:hidden property="keyName"
> > > value="journal_category"/>
> > > <html:hidden property="username"
> > > value="<%=username%>"/>
> > > <html:submit>View Articles</html:submit>
> > > </html:form>
> > > </req:isUserInRole> 
> > > 
> > > -Caroline
> > > --- "Yee, Richard K,,DMDCWEST"
> > > <Ye...@osd.pentagon.mil> wrote:
> > > > Caroline,
> > > > Imposible? Look at the HTML that is generated
> by
> > > the
> > > > JSP page. I think you
> > > > will see that it returns "null".
> > > > Take a look at the JavaDoc for
> > > > HttpServletRequest.getRemoteUser();
> > > > 
> > > > getRemoteUser
> > > > public java.lang.String getRemoteUser()
> > > > Returns the login of the user making this
> > request,
> > > > if the user has been
> > > > authenticated, or null if the user has not
> been
> > > > authenticated. Whether the
> > > > user name is sent with each subsequent request
> > > > depends on the browser and
> > > > type of authentication. Same as the value of
> the
> > > CGI
> > > > variable REMOTE_USER.
> > > > 
> > > > Returns: a String specifying the login of the
> > user
> > > > making this request, or
> > > > null 
> > > > 
> > > > As the JavaDoc says: "Whether the user name is
> > > sent
> > > > with each subsequent
> > > > request depends on the browser and type of
> > > > authentication."  Are you using
> > > > basic authentication or are you authenticating
> > the
> > > > user yourself?
> > > > If you are doing it yourself (ie. through a db
> > > > lookup) then the server
> > > > doesn't know about the user being
> authenticated
> > > and
> 
=== message truncated ===


__________________________________
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing.
http://photos.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Posted by Caroline Jen <ji...@yahoo.com>.
I do not fully understand what you say about null or
"null".  Anyway, I did try to write out values in the
FindEditorData.java.  What is written out in the
browser is:

name=null; kn=journal_category; kv=null

And the way I try to write out those crucial fields is
shown below:

// package and import statements omitted
public final class FindEditorData extends Bean
{
   public Object execute() throws Exception
   {

   // Obtain username 
   String username = getUsername();
      
   EditorService service = new EditorService();
   String value = service.findEditorData( username );

        String property = getKeyName();
        
        if (( null==property ) || ( null==value )) 
        {
            StringBuffer sb = new StringBuffer();
            sb.append( "name=" );
            sb.append( username );
            sb.append( "; kn=" );
            sb.append( property );
            sb.append( "; kv=" );
            sb.append( value );
            throw new ParameterException(
sb.toString() );
        }

        ResultList list = new ResultListBase
        (

            Access.findByProperty( this,property,value
)

        );
        list.setLegend( property,value );

        return new ProcessResultBase( list );

   } // end execute

} // End FindEditorData

--- Richard Yee <ry...@yahoo.com> wrote:
> Caroline,
> In your FindEditorData.java class, is the value for
> your username variable null or "null"?  If it is
> null,
> then you are reading the wrong request parameter
> since
> request.getParameter() will return null if the
> parameter doesn't exist. If the String value is
> "null", then you have a problem with getRemoteUser()
> Why don't you dump request parameters that you are
> getting in your FindEditorData?
> 
> Hidden input tags work fine. 
> 
> Regards,
> 
> Richard
> --- Caroline Jen <ji...@yahoo.com> wrote:
> > Hi, I think that we are in different time zones.
> > 
> > As you have mentioned, I, too, suspected that the
> > statement in my JSP:
> > 
> > request.getRemoteUser(); 
> > 
> > returns nothing.  Therefore, I did a test in my
> JSP.
> > 
> > In addition to request.getRemoteUser(); I created
> > another String manually:
> > 
> > <req:isUserInRole role="editor">
> > <% 
> >    String username = request.getRemoteUser(); 
> >    String userrole = "author"; 
> > %>   
> > <% out.println("The user name is: " + username
> > +".");
> > %>
> > <% out.println("The role is: " + userrole +".");
> %>
> > </req:isUserInRole>
> > 
> > And the browser shows:
> > 
> > The user name is: Gloria Jen.  The role is:
> author. 
> > 
> > Gloria Jen is the name that I provided while
> logging
> > on and authenticated by the container.  Therefore,
> > the
> > request.getRemoteUser(); does not return a null. 
> > And
> > I hope that it means I am not passing a null value
> > when I use the hidden field technique.
> > 
> > Then, I pass two hidden fields (with value in
> them)
> > from my JSP to a Java class (FindEditorData.java),
> > which is of scaffold.ProcessAction type.  One of
> the
> > field is passed with its value correctly
> retrieved. 
> > The other field is passed with its value found to
> be
> > null.
> > 
> > What could go wrong?  I have been thinking about
> it
> > for days and so do those who try to help me.  
> > 
> > <req:isUserInRole role="editor">
> > <html:form action="/find/Category">
> > <% 
> >    String username = request.getRemoteUser(); 
> >    String userrole = "author"; 
> > %>   
> > <%out.println("The user name is: " + username
> > +".");%>
> > <%out.println("The role is: " + userrole +".");%>
> > <html:hidden property="keyName"
> > value="journal_category"/>
> > <html:hidden property="username"
> > value="<%=username%>"/>
> > <html:submit>View Articles</html:submit>
> > </html:form>
> > </req:isUserInRole> 
> > 
> > -Caroline
> > --- "Yee, Richard K,,DMDCWEST"
> > <Ye...@osd.pentagon.mil> wrote:
> > > Caroline,
> > > Imposible? Look at the HTML that is generated by
> > the
> > > JSP page. I think you
> > > will see that it returns "null".
> > > Take a look at the JavaDoc for
> > > HttpServletRequest.getRemoteUser();
> > > 
> > > getRemoteUser
> > > public java.lang.String getRemoteUser()
> > > Returns the login of the user making this
> request,
> > > if the user has been
> > > authenticated, or null if the user has not been
> > > authenticated. Whether the
> > > user name is sent with each subsequent request
> > > depends on the browser and
> > > type of authentication. Same as the value of the
> > CGI
> > > variable REMOTE_USER.
> > > 
> > > Returns: a String specifying the login of the
> user
> > > making this request, or
> > > null 
> > > 
> > > As the JavaDoc says: "Whether the user name is
> > sent
> > > with each subsequent
> > > request depends on the browser and type of
> > > authentication."  Are you using
> > > basic authentication or are you authenticating
> the
> > > user yourself?
> > > If you are doing it yourself (ie. through a db
> > > lookup) then the server
> > > doesn't know about the user being authenticated
> > and
> > > will return null.
> > > 
> > > Regards,
> > > 
> > > Richard
> > > -----Original Message-----
> > > From: Caroline Jen [mailto:jiapei_jen@yahoo.com]
> 
> > > Sent: Monday, December 08, 2003 2:56 PM
> > > To: Struts Users Mailing List
> > > Subject: RE: Please Help! Unable to Pass A
> Hidden
> > > Field To scaffold.Proces
> > > sAction
> > > 
> > > 
> > > I pass two hidden fields: username and keyName
> at
> > > the
> > > same time.  The keyName is passed and with the
> > > correct
> > > value in it.  The username is passed but its
> value
> > > turns out to be a null.
> > > 
> > > It is impossible for request.getRemoteUser(); in
> > my
> > > JSP returning a null.  (see code below) Before
> it
> > > reaches request.getRemoteUser(); the user has
> > > already
> > > been successfully logged in with a valid name.
> > > 
> > > <req:isUserInRole role="editor">
> > > <html:form action="/find/Category">
> > > <TR>
> > > <TD class="option">
> > > <% String username = request.getRemoteUser();%>
> > > <html:hidden property="keyName"
> > > value="journal_category"/>
> > > <html:hidden property="username"
> > > value="<%=username%>"/>
> > > <html:submit>View Articles</html:submit>
> > > </TD>
> > > </TR>
> > > </html:form>
> > > </req:isUserInRole>
> > > --- "Yee, Richard K,,DMDCWEST"
> > > <Ye...@osd.pentagon.mil> wrote:
> > > > Caroline,
> > > > Are you having problems with the username or
> the
> > > > keyName hidden variable? If
> > > > it is the username, then I'd suspect that
> > > > request.getRemoteUser() in your
> > > > JSP is returning null.
> > > > 
> > > > Regards,
> > > > 
> > > > Richard
> > > > 
> > > > -----Original Message-----
> > > > From: Caroline Jen
> [mailto:jiapei_jen@yahoo.com]
> > > > Sent: Monday, December 08, 2003 1:32 PM
> > > > To: Struts Users Mailing List
> > > > Subject: Re: Please Help! Unable to Pass A
> > Hidden
> > > > Field To
> > > > scaffold.ProcessAction
> > > > 
> 
=== message truncated ===


__________________________________
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing.
http://photos.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Posted by Richard Yee <ry...@yahoo.com>.
Caroline,
In your FindEditorData.java class, is the value for
your username variable null or "null"?  If it is null,
then you are reading the wrong request parameter since
request.getParameter() will return null if the
parameter doesn't exist. If the String value is
"null", then you have a problem with getRemoteUser()
Why don't you dump request parameters that you are
getting in your FindEditorData?

Hidden input tags work fine. 

Regards,

Richard
--- Caroline Jen <ji...@yahoo.com> wrote:
> Hi, I think that we are in different time zones.
> 
> As you have mentioned, I, too, suspected that the
> statement in my JSP:
> 
> request.getRemoteUser(); 
> 
> returns nothing.  Therefore, I did a test in my JSP.
> 
> In addition to request.getRemoteUser(); I created
> another String manually:
> 
> <req:isUserInRole role="editor">
> <% 
>    String username = request.getRemoteUser(); 
>    String userrole = "author"; 
> %>   
> <% out.println("The user name is: " + username
> +".");
> %>
> <% out.println("The role is: " + userrole +"."); %>
> </req:isUserInRole>
> 
> And the browser shows:
> 
> The user name is: Gloria Jen.  The role is: author. 
> 
> Gloria Jen is the name that I provided while logging
> on and authenticated by the container.  Therefore,
> the
> request.getRemoteUser(); does not return a null. 
> And
> I hope that it means I am not passing a null value
> when I use the hidden field technique.
> 
> Then, I pass two hidden fields (with value in them)
> from my JSP to a Java class (FindEditorData.java),
> which is of scaffold.ProcessAction type.  One of the
> field is passed with its value correctly retrieved. 
> The other field is passed with its value found to be
> null.
> 
> What could go wrong?  I have been thinking about it
> for days and so do those who try to help me.  
> 
> <req:isUserInRole role="editor">
> <html:form action="/find/Category">
> <% 
>    String username = request.getRemoteUser(); 
>    String userrole = "author"; 
> %>   
> <%out.println("The user name is: " + username
> +".");%>
> <%out.println("The role is: " + userrole +".");%>
> <html:hidden property="keyName"
> value="journal_category"/>
> <html:hidden property="username"
> value="<%=username%>"/>
> <html:submit>View Articles</html:submit>
> </html:form>
> </req:isUserInRole> 
> 
> -Caroline
> --- "Yee, Richard K,,DMDCWEST"
> <Ye...@osd.pentagon.mil> wrote:
> > Caroline,
> > Imposible? Look at the HTML that is generated by
> the
> > JSP page. I think you
> > will see that it returns "null".
> > Take a look at the JavaDoc for
> > HttpServletRequest.getRemoteUser();
> > 
> > getRemoteUser
> > public java.lang.String getRemoteUser()
> > Returns the login of the user making this request,
> > if the user has been
> > authenticated, or null if the user has not been
> > authenticated. Whether the
> > user name is sent with each subsequent request
> > depends on the browser and
> > type of authentication. Same as the value of the
> CGI
> > variable REMOTE_USER.
> > 
> > Returns: a String specifying the login of the user
> > making this request, or
> > null 
> > 
> > As the JavaDoc says: "Whether the user name is
> sent
> > with each subsequent
> > request depends on the browser and type of
> > authentication."  Are you using
> > basic authentication or are you authenticating the
> > user yourself?
> > If you are doing it yourself (ie. through a db
> > lookup) then the server
> > doesn't know about the user being authenticated
> and
> > will return null.
> > 
> > Regards,
> > 
> > Richard
> > -----Original Message-----
> > From: Caroline Jen [mailto:jiapei_jen@yahoo.com] 
> > Sent: Monday, December 08, 2003 2:56 PM
> > To: Struts Users Mailing List
> > Subject: RE: Please Help! Unable to Pass A Hidden
> > Field To scaffold.Proces
> > sAction
> > 
> > 
> > I pass two hidden fields: username and keyName at
> > the
> > same time.  The keyName is passed and with the
> > correct
> > value in it.  The username is passed but its value
> > turns out to be a null.
> > 
> > It is impossible for request.getRemoteUser(); in
> my
> > JSP returning a null.  (see code below) Before it
> > reaches request.getRemoteUser(); the user has
> > already
> > been successfully logged in with a valid name.
> > 
> > <req:isUserInRole role="editor">
> > <html:form action="/find/Category">
> > <TR>
> > <TD class="option">
> > <% String username = request.getRemoteUser();%>
> > <html:hidden property="keyName"
> > value="journal_category"/>
> > <html:hidden property="username"
> > value="<%=username%>"/>
> > <html:submit>View Articles</html:submit>
> > </TD>
> > </TR>
> > </html:form>
> > </req:isUserInRole>
> > --- "Yee, Richard K,,DMDCWEST"
> > <Ye...@osd.pentagon.mil> wrote:
> > > Caroline,
> > > Are you having problems with the username or the
> > > keyName hidden variable? If
> > > it is the username, then I'd suspect that
> > > request.getRemoteUser() in your
> > > JSP is returning null.
> > > 
> > > Regards,
> > > 
> > > Richard
> > > 
> > > -----Original Message-----
> > > From: Caroline Jen [mailto:jiapei_jen@yahoo.com]
> > > Sent: Monday, December 08, 2003 1:32 PM
> > > To: Struts Users Mailing List
> > > Subject: Re: Please Help! Unable to Pass A
> Hidden
> > > Field To
> > > scaffold.ProcessAction
> > > 
> > > 
> > > I did not mess up lowercase and uppercase of the
> > > hidden field I want to pass from my JSP to the
> > scaffold.ProcessAction.  
> > > If it had been the lowercase/uppercase problem,
> I
> > would
> > > have gotten a message
> > > saying that the variable could not be
> recognized. 
> > 
> > > 
> > > I pass two hidden fields at the same time.  One
> of
> > > them is successfully passed with correct value. 
> > The
> > > other is passed but its value shows a 'null' in
> > the 
> > > scaffold.ProcessAction. What could go wrong? 
> Let
> > me show my code 
> > > again:
> > > 
> > > Two hidden fields: username and keyName are
> passed
> > > from a JSP via a SUBMIT button:
> > > 
> > > <req:isUserInRole role="editor">
> > > <html:form action="/find/Category">
> > > <% String username = request.getRemoteUser();%>
> > > <html:hidden property="keyName"
> > > value="journal_category"/>
> > > <html:hidden property="username"
> > > value="<%=username%>"/>
> > > <html:submit>View Articles</html:submit>
> > > </html:form>
> > > </req:isUserInRole>
> 
=== message truncated ===


__________________________________
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing.
http://photos.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Posted by Caroline Jen <ji...@yahoo.com>.
Hi, I think that we are in different time zones.

As you have mentioned, I, too, suspected that the
statement in my JSP:

request.getRemoteUser(); 

returns nothing.  Therefore, I did a test in my JSP. 
In addition to request.getRemoteUser(); I created
another String manually:

<req:isUserInRole role="editor">
<% 
   String username = request.getRemoteUser(); 
   String userrole = "author"; 
%>   
<% out.println("The user name is: " + username +".");
%>
<% out.println("The role is: " + userrole +"."); %>
</req:isUserInRole>

And the browser shows:

The user name is: Gloria Jen.  The role is: author. 

Gloria Jen is the name that I provided while logging
on and authenticated by the container.  Therefore, the
request.getRemoteUser(); does not return a null.  And
I hope that it means I am not passing a null value
when I use the hidden field technique.

Then, I pass two hidden fields (with value in them)
from my JSP to a Java class (FindEditorData.java),
which is of scaffold.ProcessAction type.  One of the
field is passed with its value correctly retrieved. 
The other field is passed with its value found to be
null.

What could go wrong?  I have been thinking about it
for days and so do those who try to help me.  

<req:isUserInRole role="editor">
<html:form action="/find/Category">
<% 
   String username = request.getRemoteUser(); 
   String userrole = "author"; 
%>   
<%out.println("The user name is: " + username +".");%>
<%out.println("The role is: " + userrole +".");%>
<html:hidden property="keyName"
value="journal_category"/>
<html:hidden property="username"
value="<%=username%>"/>
<html:submit>View Articles</html:submit>
</html:form>
</req:isUserInRole> 

-Caroline
--- "Yee, Richard K,,DMDCWEST"
<Ye...@osd.pentagon.mil> wrote:
> Caroline,
> Imposible? Look at the HTML that is generated by the
> JSP page. I think you
> will see that it returns "null".
> Take a look at the JavaDoc for
> HttpServletRequest.getRemoteUser();
> 
> getRemoteUser
> public java.lang.String getRemoteUser()
> Returns the login of the user making this request,
> if the user has been
> authenticated, or null if the user has not been
> authenticated. Whether the
> user name is sent with each subsequent request
> depends on the browser and
> type of authentication. Same as the value of the CGI
> variable REMOTE_USER.
> 
> Returns: a String specifying the login of the user
> making this request, or
> null 
> 
> As the JavaDoc says: "Whether the user name is sent
> with each subsequent
> request depends on the browser and type of
> authentication."  Are you using
> basic authentication or are you authenticating the
> user yourself?
> If you are doing it yourself (ie. through a db
> lookup) then the server
> doesn't know about the user being authenticated and
> will return null.
> 
> Regards,
> 
> Richard
> -----Original Message-----
> From: Caroline Jen [mailto:jiapei_jen@yahoo.com] 
> Sent: Monday, December 08, 2003 2:56 PM
> To: Struts Users Mailing List
> Subject: RE: Please Help! Unable to Pass A Hidden
> Field To scaffold.Proces
> sAction
> 
> 
> I pass two hidden fields: username and keyName at
> the
> same time.  The keyName is passed and with the
> correct
> value in it.  The username is passed but its value
> turns out to be a null.
> 
> It is impossible for request.getRemoteUser(); in my
> JSP returning a null.  (see code below) Before it
> reaches request.getRemoteUser(); the user has
> already
> been successfully logged in with a valid name.
> 
> <req:isUserInRole role="editor">
> <html:form action="/find/Category">
> <TR>
> <TD class="option">
> <% String username = request.getRemoteUser();%>
> <html:hidden property="keyName"
> value="journal_category"/>
> <html:hidden property="username"
> value="<%=username%>"/>
> <html:submit>View Articles</html:submit>
> </TD>
> </TR>
> </html:form>
> </req:isUserInRole>
> --- "Yee, Richard K,,DMDCWEST"
> <Ye...@osd.pentagon.mil> wrote:
> > Caroline,
> > Are you having problems with the username or the
> > keyName hidden variable? If
> > it is the username, then I'd suspect that
> > request.getRemoteUser() in your
> > JSP is returning null.
> > 
> > Regards,
> > 
> > Richard
> > 
> > -----Original Message-----
> > From: Caroline Jen [mailto:jiapei_jen@yahoo.com]
> > Sent: Monday, December 08, 2003 1:32 PM
> > To: Struts Users Mailing List
> > Subject: Re: Please Help! Unable to Pass A Hidden
> > Field To
> > scaffold.ProcessAction
> > 
> > 
> > I did not mess up lowercase and uppercase of the
> > hidden field I want to pass from my JSP to the
> scaffold.ProcessAction.  
> > If it had been the lowercase/uppercase problem, I
> would
> > have gotten a message
> > saying that the variable could not be recognized. 
> 
> > 
> > I pass two hidden fields at the same time.  One of
> > them is successfully passed with correct value. 
> The
> > other is passed but its value shows a 'null' in
> the 
> > scaffold.ProcessAction. What could go wrong?  Let
> me show my code 
> > again:
> > 
> > Two hidden fields: username and keyName are passed
> > from a JSP via a SUBMIT button:
> > 
> > <req:isUserInRole role="editor">
> > <html:form action="/find/Category">
> > <% String username = request.getRemoteUser();%>
> > <html:hidden property="keyName"
> > value="journal_category"/>
> > <html:hidden property="username"
> > value="<%=username%>"/>
> > <html:submit>View Articles</html:submit>
> > </html:form>
> > </req:isUserInRole>
> > 
> > and an action mapping:
> > 
> >     <action
> >         roles="editor"
> >         path="/find/Category"
> >        
> > type="org.apache.struts.scaffold.ProcessAction"
> >        
> >
>
parameter="org.apache.artimus.article.FindEditorData"
> >         name="articleForm"
> >         scope="request"
> >         validate="false">
> >        <forward
> >             name="success"
> >             path=".article.Result"/>
> >     </action>
> > 
> > The value of the 'username' is found to be a
> 'null'
> > in
> > the FindEditorData.java while the value of keyName
> > is successfully
> > retrieved.  In the browser, I got:
> > 
> > name=null; kn=journal_category; kv=null
> > 
> > The code of my FindEditorData is shown below:
> > 
> > public final class FindEditorData extends Bean
> > {
> >    public Object execute() throws Exception
> >    {
> > 
> >    // Obtain username 
> >    String username = getUsername();
> >       
> >    EditorService service = new EditorService();
> >    String value = service.findEditorData( username
> > );
> > 
> >    String property = getKeyName();
> >         
> >         if (( null==property ) || ( null==value ))
> 
> >         {
> >             StringBuffer sb = new StringBuffer();
> >             sb.append( "name=" );
> >             sb.append( username );
> >             sb.append( "; kn=" );
> >             sb.append( property );
> >             sb.append( "; kv=" );
> >             sb.append( value );
> >             throw new ParameterException(
> > sb.toString() );
> >         }
> > 
> >         ResultList list = new ResultListBase
> >         (
> > 
> >             Access.findByProperty(
> > this,property,value
> > )
> > 
> >         );
> >         list.setLegend( property,value );
> > 
> >         return new ProcessResultBase( list );
> > 
> >    } // end execute
> > 
> > } // End FindEditorData
> >   
> > 
> > 
> 
=== message truncated ===


__________________________________
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing.
http://photos.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


Re: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Posted by Paul Thomas <pa...@tmsl.demon.co.uk>.
On 09/12/2003 01:29 Caroline Jen wrote:
> I use container-managed authentication.

In which case, why don't you get the user name using 
request.getUserPrincipal().getName() ?

-- 
Paul Thomas
+------------------------------+---------------------------------------------+
| Thomas Micro Systems Limited | Software Solutions for the Smaller 
Business |
| Computer Consultants         | 
http://www.thomas-micro-systems-ltd.co.uk   |
+------------------------------+---------------------------------------------+

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


RE: Please Help! Unable to Pass A Hidden Field To scaffold.Proces sAction

Posted by Caroline Jen <ji...@yahoo.com>.
I use container-managed authentication.  



--- "Yee, Richard K,,DMDCWEST"
<Ye...@osd.pentagon.mil> wrote:
> Caroline,
> Imposible? Look at the HTML that is generated by the
> JSP page. I think you
> will see that it returns "null".
> Take a look at the JavaDoc for
> HttpServletRequest.getRemoteUser();
> 
> getRemoteUser
> public java.lang.String getRemoteUser()
> Returns the login of the user making this request,
> if the user has been
> authenticated, or null if the user has not been
> authenticated. Whether the
> user name is sent with each subsequent request
> depends on the browser and
> type of authentication. Same as the value of the CGI
> variable REMOTE_USER.
> 
> Returns: a String specifying the login of the user
> making this request, or
> null 
> 
> As the JavaDoc says: "Whether the user name is sent
> with each subsequent
> request depends on the browser and type of
> authentication."  Are you using
> basic authentication or are you authenticating the
> user yourself?
> If you are doing it yourself (ie. through a db
> lookup) then the server
> doesn't know about the user being authenticated and
> will return null.
> 
> Regards,
> 
> Richard
> -----Original Message-----
> From: Caroline Jen [mailto:jiapei_jen@yahoo.com] 
> Sent: Monday, December 08, 2003 2:56 PM
> To: Struts Users Mailing List
> Subject: RE: Please Help! Unable to Pass A Hidden
> Field To scaffold.Proces
> sAction
> 
> 
> I pass two hidden fields: username and keyName at
> the
> same time.  The keyName is passed and with the
> correct
> value in it.  The username is passed but its value
> turns out to be a null.
> 
> It is impossible for request.getRemoteUser(); in my
> JSP returning a null.  (see code below) Before it
> reaches request.getRemoteUser(); the user has
> already
> been successfully logged in with a valid name.
> 
> <req:isUserInRole role="editor">
> <html:form action="/find/Category">
> <TR>
> <TD class="option">
> <% String username = request.getRemoteUser();%>
> <html:hidden property="keyName"
> value="journal_category"/>
> <html:hidden property="username"
> value="<%=username%>"/>
> <html:submit>View Articles</html:submit>
> </TD>
> </TR>
> </html:form>
> </req:isUserInRole>
> --- "Yee, Richard K,,DMDCWEST"
> <Ye...@osd.pentagon.mil> wrote:
> > Caroline,
> > Are you having problems with the username or the
> > keyName hidden variable? If
> > it is the username, then I'd suspect that
> > request.getRemoteUser() in your
> > JSP is returning null.
> > 
> > Regards,
> > 
> > Richard
> > 
> > -----Original Message-----
> > From: Caroline Jen [mailto:jiapei_jen@yahoo.com]
> > Sent: Monday, December 08, 2003 1:32 PM
> > To: Struts Users Mailing List
> > Subject: Re: Please Help! Unable to Pass A Hidden
> > Field To
> > scaffold.ProcessAction
> > 
> > 
> > I did not mess up lowercase and uppercase of the
> > hidden field I want to pass from my JSP to the
> scaffold.ProcessAction.  
> > If it had been the lowercase/uppercase problem, I
> would
> > have gotten a message
> > saying that the variable could not be recognized. 
> 
> > 
> > I pass two hidden fields at the same time.  One of
> > them is successfully passed with correct value. 
> The
> > other is passed but its value shows a 'null' in
> the 
> > scaffold.ProcessAction. What could go wrong?  Let
> me show my code 
> > again:
> > 
> > Two hidden fields: username and keyName are passed
> > from a JSP via a SUBMIT button:
> > 
> > <req:isUserInRole role="editor">
> > <html:form action="/find/Category">
> > <% String username = request.getRemoteUser();%>
> > <html:hidden property="keyName"
> > value="journal_category"/>
> > <html:hidden property="username"
> > value="<%=username%>"/>
> > <html:submit>View Articles</html:submit>
> > </html:form>
> > </req:isUserInRole>
> > 
> > and an action mapping:
> > 
> >     <action
> >         roles="editor"
> >         path="/find/Category"
> >        
> > type="org.apache.struts.scaffold.ProcessAction"
> >        
> >
>
parameter="org.apache.artimus.article.FindEditorData"
> >         name="articleForm"
> >         scope="request"
> >         validate="false">
> >        <forward
> >             name="success"
> >             path=".article.Result"/>
> >     </action>
> > 
> > The value of the 'username' is found to be a
> 'null'
> > in
> > the FindEditorData.java while the value of keyName
> > is successfully
> > retrieved.  In the browser, I got:
> > 
> > name=null; kn=journal_category; kv=null
> > 
> > The code of my FindEditorData is shown below:
> > 
> > public final class FindEditorData extends Bean
> > {
> >    public Object execute() throws Exception
> >    {
> > 
> >    // Obtain username 
> >    String username = getUsername();
> >       
> >    EditorService service = new EditorService();
> >    String value = service.findEditorData( username
> > );
> > 
> >    String property = getKeyName();
> >         
> >         if (( null==property ) || ( null==value ))
> 
> >         {
> >             StringBuffer sb = new StringBuffer();
> >             sb.append( "name=" );
> >             sb.append( username );
> >             sb.append( "; kn=" );
> >             sb.append( property );
> >             sb.append( "; kv=" );
> >             sb.append( value );
> >             throw new ParameterException(
> > sb.toString() );
> >         }
> > 
> >         ResultList list = new ResultListBase
> >         (
> > 
> >             Access.findByProperty(
> > this,property,value
> > )
> > 
> >         );
> >         list.setLegend( property,value );
> > 
> >         return new ProcessResultBase( list );
> > 
> >    } // end execute
> > 
> > } // End FindEditorData
> >   
> > 
> > 
> 
=== message truncated ===


__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org