Any joy looking at the page source maybe..?

> -----Original Message-----
> From: None None [mailto:[EMAIL PROTECTED]
> Sent: Thursday, May 06, 2004 3:43 PM
> To: [EMAIL PROTECTED]
> Subject: RE: Some further newbie woes
> 
> 
> I'll stick with None None until I get this figured out :)
> 
> That didn't seem to help either... I actually thought of that 
> previously, I 
> figured at some point there has to be some code casting an 
> Object to a File 
> object, otherwise certainly the getName() method call is 
> going to fail.  I 
> tried again anyway, and it didn't help.
> 
> >From: "Geeta Ramani" <[EMAIL PROTECTED]>
> >Reply-To: "Struts Users Mailing List" <[EMAIL PROTECTED]>
> >To: "Struts Users Mailing List" <[EMAIL PROTECTED]>
> >Subject: RE: Some further newbie woes
> >Date: Thu, 6 May 2004 15:28:14 -0400
> >
> >None None: (or Someone Someone..;))
> >
> >In fact maybe just adding the "type" attribute to your 
> orignal iterate will 
> >work I think:
> >
> ><logic:iterate id="drive" name="listDrivesForm" property="drives" 
> >type="java.io.File">
> >     <tr><td><bean:write name="drive" property="name" /></td></tr>
> ></logic:iterate>
> >
> >Regards,
> >Geeta
> >
> > > -----Original Message-----
> > > From: Solley, Tim [mailto:[EMAIL PROTECTED]
> > > Sent: Thursday, May 06, 2004 3:31 PM
> > > To: Struts Users Mailing List
> > > Subject: RE: Some further newbie woes
> > >
> > >
> > > Hi None None...
> > >
> > > So in your JSP you are iterating over an ArrayList of File
> > > objects, trying to get at a property inside the File objects.
> > >  To get at nested objects, you use the Struts nested tag library.
> > >
> > > Try replacing your <logic:iterate....> with the equivalent
> > > from the nested library: (below off the top of my head)
> > >
> > > <nested:iterate id="drive" name="listDrivesForm"
> > > property="drives" type="java.io.File">
> > >   <nested:write name="drive" property="name"/>
> > > </nested:iterate>
> > >
> > > See if you have luck with that.
> > >
> > >
> > >
> > > -----Original Message-----
> > > From: None None [mailto:[EMAIL PROTECTED]
> > > Sent: Thursday, May 06, 2004 2:16 PM
> > > To: [EMAIL PROTECTED]
> > > Subject: Some further newbie woes
> > >
> > >
> > > Ok, I've banged my head enough in the past two hours...
> > >
> > > I'm working on a file manager Struts app to get myself
> > > acquainted with
> > > Struts.  The first logical step is a list of drives.  Here's
> > > what I've
> > > done...
> > >
> > > I have created an index.jsp that does a quick forward to
> > > main.jsp (just like
> > > the blank struts app does).  In main.jsp I have a simple link to
> > > listDrives.ofm (using extension mapping in this app).  Here's my
> > > struts-config.xml file, minus comments, linebreaks and the
> > > XML & doctype
> > > tags (to save space here)...
> > >
> > > <struts-config>
> > >     <form-beans>
> > >       <form-bean name="listDrivesForm"
> > > type="com.omnytex.ofm.actionforms.ListDrivesForm" />
> > >     </form-beans>
> > >     <global-forwards>
> > >       <forward name="main" path="/main.ofm" />
> > >     </global-forwards>
> > >     <action-mappings>
> > >       <action path="/main"
> > > type="org.apache.struts.actions.ForwardAction"
> > > parameter="/jsp/main.jsp" />
> > >       <action path="/listDrives"
> > > type="com.omnytex.ofm.actions.ListDrivesAction" 
> name="listDrivesForm"
> > > scope="request" validate="false">
> > >         <forward name="showDrivesList" 
> path="/jsp/drivesList.jsp" />
> > >       </action>
> > >     </action-mappings>
> > > </struts-config>
> > >
> > > Simple enough.  So, I click my link and the following 
> ActionForm is
> > > instantiated in request scope:
> > >
> > > package com.test.ofm.actionforms;
> > > import org.apache.struts.action.*;
> > > import java.io.*;
> > > import java.util.*;
> > > public class ListDrivesForm extends ActionForm {
> > >   private ArrayList drives = null;
> > >   public ListDrivesForm() {
> > >     drives = null;
> > >   }
> > >   public void setDrives(File[] inDrives) {
> > >     drives = new ArrayList();
> > >     for (int i = 0; i < inDrives.length; i++) {
> > >       drives.add(inDrives[i]);
> > >     }
> > >   }
> > >   public ArrayList getDrives() {
> > >     return drives;
> > >   }
> > > }
> > >
> > > Also simple enough.  Next, the following action executes:
> > >
> > > package com.test.ofm.actions;
> > > import org.apache.struts.action.*;
> > > import java.io.*;
> > > import javax.servlet.http.*;
> > > import com.test.ofm.actionforms.*;
> > > public class ListDrivesAction extends Action {
> > >   public ActionForward execute(ActionMapping mapping,
> > > ActionForm form,
> > > HttpServletRequest request, HttpServletResponse response)
> > > throws Exception {
> > >     File[] drives = File.listRoots();
> > >     ListDrivesForm ldf = (ListDrivesForm)form;
> > >     ldf.setDrives(drives);
> > >     return mapping.findForward("showDrivesList");
> > >   }
> > > }
> > >
> > > Now, to this point I am OK because if I do a simple println of
> > > ldf.getDrives(), I in fact get a list of the drives on my 
> system as
> > > expected.  So, I know my basic flow to this point is OK, and
> > > I know the code
> > > in the action is doing what I expect.  Lastly, I have the
> > > following JSP:
> > >
> > > <%@ page language="java"
> > > import="java.io.*,com.omnytex.ofm.actionforms.*" %>
> > > <%@ taglib uri="/WEB-INF/tld/struts-logic.tld" prefix="logic" %>
> > > <%@ taglib uri="/WEB-INF/tld/struts-bean.tld" prefix="bean"%>
> > > <html>
> > > <head>
> > > <title>File Manager</title>
> > > </head>
> > > <body>
> > > File Manager
> > > <br><hr><br>
> > > <table border="1" cellpadding="0" cellspacing="0" width="100%">
> > >   <logic:iterate id="drive" name="listDrivesForm" 
> property="drives">
> > >     <tr><td><bean:write name="drive" property="name" /></td></tr>
> > >   </logic:iterate>
> > > </table>
> > > </body>
> > > </html>
> > >
> > > This is where the problem arises... My table is being built,
> > > and the proper
> > > number of rows are there, but I'm not seeing the drive 
> letter being
> > > displayed.  I have verified that my listDrivesForm is present
> > > and populated
> > > by donig:
> > >
> > > <%
> > >   ListDrivesForm ldf =
> > > (ListDrivesForm)request.getAttribute("listDrivesForm");
> > >   System.out.println(ldf);
> > > %>
> > >
> > > Sure enough, I see my drive list.  Now, I've been playing
> > > with various names
> > > and ID combinations in the logic:iterate and bean:write tags,
> > > but nothing
> > > seems to make it work.  I've also tried in place of bean:write:
> > >
> > > <tr><td><%=((File)drive).getName()%></td></tr>
> > >
> > > From my reading I expected that to work just as well.  I've
> > > also tried
> > > adding the scope attribute to the bean:write tag to no avail.
> > >
> > > So, what am I doing wrong here?  Do I need to do usebean 
> here?  Every
> > > example I've seen of this never shows that, so I assume not.
> > > Also, why
> > > didn't the code manually calling getName() above not work
> > > either?  Even if I
> > > needed useBean I would expect that to still work, which leads
> > > me to believe
> > > I DON'T need useBean.
> > >
> > > Any help is very much appreciated!
> > >
> > > _________________________________________________________________
> > > MSN Toolbar provides one-click access to Hotmail from any Web
> > > page - FREE
> > > download! http://toolbar.msn.com/go/onm00200413ave/direct/01/
> > >
> > >
> > > 
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> > > 
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >
> 
> _________________________________________________________________
> Stop worrying about overloading your inbox - get MSN Hotmail 
> Extra Storage! 
> http://join.msn.com/?pgmarket=en-us&page=hotmail/es2&ST=1/go/o
nm00200362ave/direct/01/


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to