• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Devaka Cooray
  • Liutauras Vilda
Sheriffs:
  • Jeanne Boyarsky
  • paul wheaton
  • Henry Wong
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Tim Moores
  • Carey Brown
  • Mikalai Zaikin
Bartenders:
  • Lou Hamers
  • Piet Souris
  • Frits Walraven

3 Problems about using Struts

 
Ranch Hand
Posts: 42
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
1.I want to trigger an Action without a HTML form, but the struts config must use an ActionForm for an Action, How I could do that?
2.I found if I use Struts in my project, the JSP's EL can't use, but sometimes I must use it, How to fix it, or Is there another way?
3.I want to fill the HTML form with the value I retrieve from database, How can I do that with struts?

thanks
 
Ranch Hand
Posts: 4864
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

1.I want to trigger an Action without a HTML form, but the struts config must use an ActionForm for an Action, How I could do that?


Struts is a "Web application Framework", which means that it it's for creating applications that use HTTP requests for triggering actions. If you want something else to trigger your actions, you may need to find that functionality in another tool or framework. Just out of curiosity, what do you want to trigger your actions?

2.I found if I use Struts in my project, the JSP's EL can't use, but sometimes I must use it, How to fix it, or Is there another way?


Using Struts does not disable EL. Any 2.4 web container will still support the use of EL regardless of whether you use Struts or not. Check the top of the web.xml file in your Struts application. I suspect that it may be using the DTD for Version 2.3 of the Servlet Spec, rather than 2.4. Since 2.3 doesn't support EL except inside JSTL tags, this may be the reason your EL isn't working.

3.I want to fill the HTML form with the value I retrieve from database, How can I do that with struts?


If you will put the information you retrieve from a database into a javaBean that extends ActionForm and assign that bean to the action in the struts-config.xml file, Struts will populate the form automatically for you as long as you use the Struts <html:xxx> tags in the JSP that calls the action.

For example, if you have a CustomerForm bean with a property of customerName, Struts will display whatever is in that property if you code <html:text property="customerName" /> in your JSP.
 
gao zhixin
Ranch Hand
Posts: 42
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
1.Maybe I explained poorly, I want to trigger the action with a hyperlink, I do a do that without a ActionForm.
2.I use Tomcat 5.0, I think It's suppport EL, but I only can use EL automatically without Struts, with Struts, I must explicit direct in page direction that I want to use it.
 
Ranch Hand
Posts: 948
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
You can call an action through a hyperlink. That is a very common practice. If your action does not need an Action form, just leave off the "name=" entry of your action definition (the form parameter of your execute method will be null).

Depending on what you are doing, it may make sense to associate a form to your Action. For example, I might have three related actions: AddUser, EditUser and SaveUser. I would declare each of these to use the form UserForm. From a page that displays a list of users, I might have a hyperlink that looks like "../EditUser.do?id=25". The execute method would get passed a UserForm with the id property populated. I would use the id from the form to lookup the user and then I would populate the UserForm with the data retrieved.

I have not done enough with EL to weigh in on that topic.

- Brent
 
All that thinking. Doesn't it hurt? What do you think about this tiny ad?
We need your help - Coderanch server fundraiser
https://coderanch.com/wiki/782867/Coderanch-server-fundraiser
reply
    Bookmark Topic Watch Topic
  • New Topic