Skip parsing of property for json plugin
Hi all, I'm using struts2-core 2.3.16.3 along with struts2-json-plugin and I have the following problem: I have an entity bean, say Event which has the following 3 properties: id, dateCreated and data data is already a json string saved in the database. e.g.: Event data: {"id":1003,"username":"admin3","email":"t...@example.com","lastname":"Lastname","f_user_type":1,"firstname":"Firstname","password":"fdhfdfh"} Now in my struts2 action I have a List gridModel which I feed to a jquery grid. My problem is that the data property string is being escaped, e.g: {"JSON":"success","actionErrors":[],"actionMessages":[],"someId":"3","destination":null,"errorMessages":[],"errors":{},"fieldErrors":{},"gridModel":[{"data":"{\"id\":1,\"username\":\"admin\",\"email\":\"ad...@example.com\",\"lastname\":\"Lastname\",\"f_user_type\":1,\"firstname\":\"Firstname\",\"password\":\"***\"}","dateCreated":"2014-05-30T18:15:10","id":46009},{"data":"{\"id\":1002,\"username\":\"admin2\",\"email\":\"t...@example.com\",\"lastname\":\"Lastname\",\"f_user_type\":1,\"firstname\":\"Firstname\",\"password\":\"\"}","dateCreated":"2014-05-30T18:15:10","id":46010},{"data":"{\"id\":1004,\"username\":\"admin4\",\"email\":\"t...@example.com\",\"lastname\":\"Lastname\",\"f_user_type\":1,\" Is there any way to avoid this escaping? What alternatives do I have? One idea is to just return a tiles plugin and create the json string by hand in a jsp. From what I've seen @JSON annotation does not have the option to skip escaping. This might be nice. Regards Dimitris - To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org
Problem with validation
Hi all, in my project we're using Struts 1.3.8. I have a case of editing an organisation. Because we have two types of organisations, I'm using a BaseOrganisationForm (extends ValidatorForm) as a form bean where I've put the validation as xdoclet tags. Then I inherit this class from OrganisationForm. OrganisationForm has the fields for both types of organisations and depending on the organisation type I do custom validation of the fields in the validate method. In the action classes I have a PrepareEditOrganisationAction and EditOrganisationAction with the later doing the real work of course. In the Prepare action I set some request attributes so I can enable or disable some form elements in the GUI. Thus I've also set the xdoclet tag for my edit action as follows: * @struts.action name="organisationForm" path="/editOrganisation" *validate="true" input="/prepareEditOrganisation.do" *cancellable="true" So that upon an error, I first go to the prepare action again and set the request attributes. However the problem is that if I put an invalid organisation name which is declared in BaseOrganisationForm everything seems to work ok. The form fields that should remain enabled are enabled (from the request attributes). If I put an invalid field at one of the OrganisationForm fields it seems to go to the prepare action but calls the input of that, without really setting the request attributes, thus the fields are shown disabled. Any ideas how I can fix this? Sorry for the long post. Regards Dimitris - To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org
Problem with validation
Hi all, in my project we're using Struts 1.3.8. I have a case of editing an organisation. Because we have two types of organisations, I'm using a BaseOrganisationForm (extends ValidatorForm) as a form bean where I've put the validation as xdoclet tags. Then I inherit this class from OrganisationForm. OrganisationForm has the fields for both types of organisations and depending on the organisation type I do custom validation of the fields in the validate method. In the action classes I have a PrepareEditOrganisationAction and EditOrganisationAction with the later doing the real work of course. In the Prepare action I set some request attributes so I can enable or disable some form elements in the GUI. Thus I've also set the xdoclet tag for my edit action as follows: * @struts.action name="organisationForm" path="/editOrganisation" *validate="true" input="/prepareEditOrganisation.do" *cancellable="true" So that upon an error, I first go to the prepare action again and set the request attributes. However the problem is that if I put an invalid organisation name which is declared in BaseOrganisationForm everything seems to work ok. The form fields that should remain enabled are enabled (from the request attributes). If I put an invalid field at one of the OrganisationForm fields it seems to go to the prepare action but calls the input of that, without really setting the request attributes, thus the fields are shown disabled. Any ideas how I can fix this? Sorry for the long post. Regards Dimitris - To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org
Problem with validation
Hi all, in my project we're using Struts 1.3.8. I have a case of editing an organisation. Because we have two types of organisations, I'm using a BaseOrganisationForm (extends ValidatorForm) as a form bean where I've put the validation as xdoclet tags. Then I inherit this class from OrganisationForm. OrganisationForm has the fields for both types of organisations and depending on the organisation type I do custom validation of the fields in the validate method. In the action classes I have a PrepareEditOrganisationAction and EditOrganisationAction with the later doing the real work of course. In the Prepare action I set some request attributes so I can enable or disable some form elements in the GUI. Thus I've also set the xdoclet tag for my edit action as follows: * @struts.action name="organisationForm" path="/editOrganisation" *validate="true" input="/prepareEditOrganisation.do" *cancellable="true" So that upon an error, I first go to the prepare action again and set the request attributes. However the problem is that if I put an invalid organisation name which is declared in BaseOrganisationForm everything seems to work ok. The form fields that should remain enabled are enabled (from the request attributes). If I put an invalid field at one of the OrganisationForm fields it seems to go to the prepare action but calls the input of that, without really setting the request attributes, thus the fields are shown disabled. Any ideas how I can fix this? Sorry for the long post. Regards Dimitris - To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org
Re: Different error messages for client and server side validation
Kawczynski, David wrote: Your Action classes can add ActionMessages for a specific property, not just GLOBAL_MESSAGES. Then, display GLOBAL_MESSAGES at the top of the page, and field-specific ones relative to the field. (this will work in 1.3.8) See http://struts.apache.org/1.2.7/api/org/apache/struts/action/ActionMessag es.html Specifically: add(java.lang.String, org.apache.struts.action.ActionMessage) get(java.lang.String) -Original Message- From: Dimitris Mouchritsas [mailto:[EMAIL PROTECTED] Sent: Tuesday, September 30, 2008 11:23 AM To: Struts Users Mailing List Subject: Re: Different error messages for client and server side validation Dimitris Mouchritsas wrote: Hi all, we are using elements in our error messages to allow the user to go to the form field when the error message shows up. Obviously this messes up the client side javascript popup message which shows like: Username is missing. Is there a way to use a different error message or should we abandon the idea of client side validation? Regards Dimitris Mouchritsas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] BTW Struts v1.3.8 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Notice: This e-mail message, together with any attachments, contains information of Merck & Co., Inc. (One Merck Drive, Whitehouse Station, New Jersey, USA 08889), and/or its affiliates (which may be known outside the United States as Merck Frosst, Merck Sharp & Dohme or MSD and in Japan, as Banyu - direct contact information for affiliates is available at http://www.merck.com/contact/contacts.html) that may be confidential, proprietary copyrighted and/or legally privileged. It is intended solely for the use of the individual or entity named on this message. If you are not the intended recipient, and have received this message in error, please notify us immediately by reply e-mail and then delete it from your system. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Can you please elaborate with a small example? I don't get it. Thanks - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Different error messages for client and server side validation
Dimitris Mouchritsas wrote: Hi all, we are using elements in our error messages to allow the user to go to the form field when the error message shows up. Obviously this messes up the client side javascript popup message which shows like: Username is missing. Is there a way to use a different error message or should we abandon the idea of client side validation? Regards Dimitris Mouchritsas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] BTW Struts v1.3.8 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Different error messages for client and server side validation
Hi all, we are using elements in our error messages to allow the user to go to the form field when the error message shows up. Obviously this messes up the client side javascript popup message which shows like: Username is missing. Is there a way to use a different error message or should we abandon the idea of client side validation? Regards Dimitris Mouchritsas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Define specific .properties file for
Hi all, we have a disclaimer page in our application (using struts 1.3.8) and we want to display a possibly rather large legal text. So the thought is to create a disclaimer.properties file with only one key in it and for that specific jsp have a to load this disclaimer.properties and get the key from there. Is this possible? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Disable validation when clicking back
Hi all, I have a multi-page form bean for a 2 step registration form. In the second page I have a back button like this: and in my action I check if it was pressed similarly to the cancel button: if (isCancelled(request)) { targetUrl = "goHome"; } else if (isBack(request)) { targetUrl = "goRegisterOrg"; } else { . private boolean isBack(HttpServletRequest request) { String back = (String)request.getParameter(EDConstants.BACK_BUTTON); return (back != null); } My problem is, how do I disable validator from checking the form? Currently the user presses the back button and validation errors show up, so he has to enter some valid values to go back. Any ideas? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Form Submission of arrays
Hi all, we've got a form where there's a table. In each row there's a hidden field for the id, a comment (text field) and a select box. What's the best way to submit this form? Create a form bean that will accept arrays as input? e.g. public class CommentForm { private String[] orgIds; private String[] comments; private String[] types; ...getters/setters public String getRow(int num) { return orgIds[num] + "$" + comments[num] + "$" + types[num]; } } Is the above class correct? Does struts guarantee that the order in which the rows are declared is the same order in the array when the form bean is submitted? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Javascript validation error
Hi all, I'm trying to use javascript validation with validator, as well as server side validation. Server side validation works just great. But when I try to use client side validation I get a validateRequired not found error. This is my jsp: and this is the result produced from the tags: . //var bCancel = false; function validateLoginForm(form) { if (bCancel) { return true; } else { var formValidationResult; formValidationResult = validateRequired(form); return (formValidationResult == 1); } } function LoginForm_required () { this.a0 = new Array("username", "Username is required.", new Function ("varName", " return this[varName];"));this.a1 = new Array("password", "Password is required.", new Function ("varName", " return this[varName];"));}//]]> ... Now I understand why the error happens, but where do I locate this validateRequired function? How do I include it in my jsp? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Using xdoclet with ValidatorActionForm
Dimitris Mouchritsas wrote: Hi all, I've got a multipage form bean to complete a registration in 3 steps. Validator is not working correctly. Some fields in the first page are validated, some are not. In the 3rd page none of the fields are validated. Now from what I understand I need to extend ValidatorActionForm instead of ValidatorForm. But in the xdoclet path I need to provide a path attribute. (btw I use a patched 1.2.3 xdoclet to support struts 1.3.8) If this is the path for the action then I'm in trouble because I have 3 seperate actions for each step. Do I need to combine them in one? Could you please provide an example of how to use this path attribute? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Finally found the answer, when declaring the page attribute for the property in xdoclet it has to be on the same declaration as in: * @struts.validator type="required,mask,maxlength" page="3" and not as in: * @struts.validator type="required,mask,maxlength" * @struts.validator page="3" The latter, even though it produced a valid validation xml it added a null as in: and this messed up the validation. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Using xdoclet with ValidatorActionForm
Hi all, I've got a multipage form bean to complete a registration in 3 steps. Validator is not working correctly. Some fields in the first page are validated, some are not. In the 3rd page none of the fields are validated. Now from what I understand I need to extend ValidatorActionForm instead of ValidatorForm. But in the xdoclet path I need to provide a path attribute. (btw I use a patched 1.2.3 xdoclet to support struts 1.3.8) If this is the path for the action then I'm in trouble because I have 3 seperate actions for each step. Do I need to combine them in one? Could you please provide an example of how to use this path attribute? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
question on multipage form bean
Hi all, I'm using a multipage form bean for a 3 page form. From what I tested, if I leave the pages (by following another link) and return later the bean is still in session scope. How can I tell struts that I've left these pages and remove the bean from session? I suppose if the user follows all the steps correctly I can do that in the final action, but what about if he clicks another link in the meantime? I'd like to invalidate the form bean in that case as well. Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Multipage forms
Hi all, I'm starting to use multipage forms to have an organisation registration, along with some codes and an admin, 3 steps in total. In the first page, I check in the action if some data from the organisation already exist, to give an error that the organisation is already registered. Does this really belong there or should I move it after the final step and forward to the first step? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Showing valid characters from a validator mask
Hi all, I've got a form bean for a user which has a field username (duuhhh:) We use a mask of ^[a-zA-Z_0-9-]*$. Is there a way I can show the valid characters to the user? Currently the error message in ApplicationResources properties is: errors.invalid={0} is invalid. and the xdoclet tags are : /** * @struts.validator type="required,mask,maxlength" * * @struts.validator-var name="maxlength" value="20" * @struts.validator-var name="mask" value="^[a-zA-Z_0-9-]*$" * * @struts.validator-args arg0resource="validator.reg.username" * @struts.validator-args arg1value="${var:maxlength}" * @struts.validator-args arg2value="${var:mask}" * * @param username The username to set. */ public void setUsername(String username) { this.username = username; } What I am fearing is if I write errors.invalid={0} is invalid. Valid characters are {2} all invalid validation messages will be like that. Thanks. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Showing messages after a redirect
Adam Hardy wrote: Dimitris Mouchritsas on 01/07/08 16:50, wrote: Yes, for Struts 1.3.8, sorry I forgot to mention. Actually what I did (but it's more or less specific for the action) is to just forward, not redirect. But I've got another question now? Is there a way I can pass a parameter in the request? I need to pass an id for an Account when I go back to the Prepare action. But since I'm not manipulating the url? And you can pass a parameter in the request if you built a new Forward based on the one you want and construct the URL manually. I dug this out of an old app: forward = mapping.findForward(origForward); forwardName = forward.getName(); redirect = forward.getRedirect(); //change URL if different URL given forwardUrl = "/somewhere/else"; forwardUrl += "?" + customQueryString; forward = new ActionForward(forwardName, forwardUrl, redirect); - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Aaah, great; that seems to solve both of my problems :) Thank you Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Showing messages after a redirect
Ian Roughley wrote: my mistake, only saw the last message. Antonio Petrelli wrote: 2008/7/1 Ian Roughley <[EMAIL PROTECTED]>: Have you looked at the message store interceptor? For Struts 1? Antonio - 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] Yes, for Struts 1.3.8, sorry I forgot to mention. Actually what I did (but it's more or less specific for the action) is to just forward, not redirect. But I've got another question now? Is there a way I can pass a parameter in the request? I need to pass an id for an Account when I go back to the Prepare action. But since I'm not manipulating the url? Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Showing messages after a redirect
Hi all, I've got the following problem. I have an action that edits the details of a user. When the action finishes correctly I want to show a confirmation message, so in the action: ActionMessages msg = new ActionMessages(); msg.add(Constants.MESSAGE_CONFIRM, new ActionMessage("prompt.changes.saved")); saveMessages(request, msg); But when I'm redirected back in the jsp there's no message showing (there's a specific tile for messages). Can you please advise on how I can accomplish this? Thank you Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: JAZN Exception when posting form with ecntype="multipart/form-data"
Dimitris Mouchritsas wrote: Dimitris Mouchritsas wrote: Hi all, we've recently upgraded our j2ee application to use struts 1.3.8 and we're getting a weird exception when trying to upload a file. Here's the jsp: testFileUpload.jsp = <%@ page contentType="text/html;charset=utf-8"%> <%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles"%> <%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean"%> <%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html"%> <%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic"%> enctype="multipart/form-data"> * Attachment: styleClass="w33" size="40" /> Save changes === Here's the action: //-- //$Id: PrepareTestFileUploadAction.java,v 1.1 2008/06/30 12:26:53 kshe Exp $ //$Author: kshe $ //$Date: 2008/06/30 12:26:53 $ //$Revision: 1.1 $ //-- package my.company.web.actions.test; import java.rmi.RemoteException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.log4j.Logger; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.upload.FormFile; import my.company.web.actions.common.BaseAction; import my.company.web.forms.TestUploadForm; /** * @custom.security-filter operation="public" * * @struts.action path="/test/prepareTestFileUpload" *name="testUploadForm" input="/test/prepareTestFileUpload" * * @struts.action-forward name="goForward" path="test.file.upload" */ public class PrepareTestFileUploadAction extends BaseAction { private static Logger log = Logger.getLogger(PrepareTestFileUploadAction.class); public PrepareTestFileUploadAction() { super(); } public ActionForward doExecute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws RepException, RemoteException { String forward = "goForward"; TestUploadForm testForm = (TestUploadForm)form; FormFile file = testForm.getAttachment(); if (file != null) { log.debug("File: " + file.getFileName()); } else { log.debug("File == null"); } return mapping.findForward(forward); } } It seems we're able to get the filename on the server side, but when it tries to go forward here's the exception we get: Caused by: javax.servlet.ServletException: JAAS-OC4J: JAZNFilter.doFilter - unable to find the current servlet at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:222) at org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java:113) at org.apache.struts.chain.commands.servlet.PerformForward.perform(PerformForward.java:96) at org.apache.struts.chain.commands.AbstractPerformForward.execute(AbstractPerformForward.java:54) at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileg
Re: JAZN Exception when posting form with ecntype="multipart/form-data"
Dimitris Mouchritsas wrote: Hi all, we've recently upgraded our j2ee application to use struts 1.3.8 and we're getting a weird exception when trying to upload a file. Here's the jsp: testFileUpload.jsp = <%@ page contentType="text/html;charset=utf-8"%> <%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles"%> <%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean"%> <%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html"%> <%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic"%> enctype="multipart/form-data"> * Attachment: styleClass="w33" size="40" /> Save changes === Here's the action: //-- //$Id: PrepareTestFileUploadAction.java,v 1.1 2008/06/30 12:26:53 kshe Exp $ //$Author: kshe $ //$Date: 2008/06/30 12:26:53 $ //$Revision: 1.1 $ //-- package my.company.web.actions.test; import java.rmi.RemoteException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.log4j.Logger; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.upload.FormFile; import my.company.web.actions.common.BaseAction; import my.company.web.forms.TestUploadForm; /** * @custom.security-filter operation="public" * * @struts.action path="/test/prepareTestFileUpload" *name="testUploadForm" input="/test/prepareTestFileUpload" * * @struts.action-forward name="goForward" path="test.file.upload" */ public class PrepareTestFileUploadAction extends BaseAction { private static Logger log = Logger.getLogger(PrepareTestFileUploadAction.class); public PrepareTestFileUploadAction() { super(); } public ActionForward doExecute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws RepException, RemoteException { String forward = "goForward"; TestUploadForm testForm = (TestUploadForm)form; FormFile file = testForm.getAttachment(); if (file != null) { log.debug("File: " + file.getFileName()); } else { log.debug("File == null"); } return mapping.findForward(forward); } } It seems we're able to get the filename on the server side, but when it tries to go forward here's the exception we get: Caused by: javax.servlet.ServletException: JAAS-OC4J: JAZNFilter.doFilter - unable to find the current servlet at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:222) at org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java:113) at org.apache.struts.chain.commands.servlet.PerformForward.perform(PerformForward.java:96) at org.apache.struts.chain.commands.AbstractPerformForward.execute(AbstractPerformForward.java:54) at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileged(Subject.java:500) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown So
JAZN Exception when posting form with ecntype="multipart/form-data"
Hi all, we've recently upgraded our j2ee application to use struts 1.3.8 and we're getting a weird exception when trying to upload a file. Here's the jsp: testFileUpload.jsp = <%@ page contentType="text/html;charset=utf-8"%> <%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles"%> <%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean"%> <%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html"%> <%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic"%> enctype="multipart/form-data"> * Attachment: styleClass="w33" size="40" /> Save changes === Here's the action: //-- //$Id: PrepareTestFileUploadAction.java,v 1.1 2008/06/30 12:26:53 kshe Exp $ //$Author: kshe $ //$Date: 2008/06/30 12:26:53 $ //$Revision: 1.1 $ //-- package my.company.web.actions.test; import java.rmi.RemoteException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.log4j.Logger; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.upload.FormFile; import my.company.web.actions.common.BaseAction; import my.company.web.forms.TestUploadForm; /** * @custom.security-filter operation="public" * * @struts.action path="/test/prepareTestFileUpload" *name="testUploadForm" input="/test/prepareTestFileUpload" * * @struts.action-forward name="goForward" path="test.file.upload" */ public class PrepareTestFileUploadAction extends BaseAction { private static Logger log = Logger.getLogger(PrepareTestFileUploadAction.class); public PrepareTestFileUploadAction() { super(); } public ActionForward doExecute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws RepException, RemoteException { String forward = "goForward"; TestUploadForm testForm = (TestUploadForm)form; FormFile file = testForm.getAttachment(); if (file != null) { log.debug("File: " + file.getFileName()); } else { log.debug("File == null"); } return mapping.findForward(forward); } } It seems we're able to get the filename on the server side, but when it tries to go forward here's the exception we get: Caused by: javax.servlet.ServletException: JAAS-OC4J: JAZNFilter.doFilter - unable to find the current servlet at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:222) at org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java:113) at org.apache.struts.chain.commands.servlet.PerformForward.perform(PerformForward.java:96) at org.apache.struts.chain.commands.AbstractPerformForward.execute(AbstractPerformForward.java:54) at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileged(Subject.java:500) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16) at com.ed.ecomm.edcore.web.filters.SecurityFilter.doFilter(SecurityFilter.java:196) at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20) at com.ed.ecomm.edcore.web.filters.MonitoringFilter.doFilte
Re: Closing tag for html:hidden
Martin wrote: Dimitris Congratulations..I think You found a bug /WEB-INF/struts-config.xml /WEB-INF/classes/ApplicationResources.properties prompt.search=Search prompt.Greece=Greece prompt.advanced.search=AdvancedSearch <%@ taglib uri="http://struts.apache.org/tags-html"; prefix="html"%> <%@ taglib uri="http://struts.apache.org/tags-bean"; prefix="bean"%> key="prompt.search"/>: Select... class="Text" /> class="SearchBTN" value="Search" /> Advanced Search displays properly..if I change - Original Message - From: "Dimitris Mouchritsas" <[EMAIL PROTECTED]> To: "Struts Users Mailing List" Sent: Tuesday, June 24, 2008 9:17 AM Subject: Re: Closing tag for html:hidden Dimitris Mouchritsas wrote: Well, one solution is to move the tld's to a directory and define them in web.xml. This seems to be working. However I've got some strange problems. For example in a tile I render a link for advanced search: <%@ taglib uri="http://struts.apache.org/tags-html"; prefix="html"%> <%@ taglib uri="http://struts.apache.org/tags-bean"; prefix="bean"%> <%--type="java.util.Date" />--%> key="prompt.search" />: Select... class="Text" /> class="SearchBTN" value="Search" /> <%--Advanced Search--%> and I get javax.servlet.jsp.JspException: ServletException in '/WEB-INF/jsp/common/search.jsp': null at org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:927) at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:465) at _web_2d_inf._jsp._common._layout._jspService(_layout.java:133) [SRC:/WEB-INF/jsp/common/layout.jsp:80] I know it's the link, because if I comment it out I get an exception on a different jsp and the tile shows up. I've also testet outside the link and it works. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] BTW is there an option in struts-config.xml (for v.1.3.8 at least) or somewhere else to notify struts to use xhtml compatible elements everywhere? So as to avoid having in every jsp? Dimitris - 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] The bug report already exists and it's from last year, see: https://issues.apache.org/struts/browse/STR-3015 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: html:link throwing null pointer
Antonio Petrelli wrote: 2008/6/24 Dimitris Mouchritsas <[EMAIL PROTECTED]>: I've corrected the code and I'm trying to find out how to rebuild struts. I don't think it is necessary, it has been released in 1.3.9. http://struts.apache.org/download.cgi#struts139 Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] But 1.3.9 is still beta. btw do you know when it will be released? Anyway I've just installed the new jar and everything is working great now. A great thank you to you Antonio, for all your support. Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: html:link throwing null pointer
Antonio Petrelli wrote: 2008/6/24 Dimitris Mouchritsas <[EMAIL PROTECTED]>: javax.servlet.jsp.JspException: ServletException in '/WEB-INF/jsp/common/search.jsp': null at org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:927) at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:465) at _web_2d_inf._jsp._common._layout._jspService(_layout.java:142) [SRC:/WEB-INF/jsp/common/layout.jsp:81] Is there a cause for this exception? Or a stack trace that appears before this one? Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] This is the stack trace following: at com.orionserver[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].http.OrionHttpJspPage.service(OrionHttpJspPage.java:56) at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:350) at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509) at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileged(Subject.java:500) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:222) at org.apache.struts.tiles.commands.TilesPreProcessor.doForward(TilesPreProcessor.java:260) at org.apache.struts.tiles.commands.TilesPreProcessor.execute(TilesPreProcessor.java:217) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileged(Subject.java:500) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16) at com.ed.ecomm.edcore.web.filters.SecurityFilter.doFilter(SecurityFilter.java:196) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20) at com.ed.ecomm.edcore.web.filters.MonitoringFilter.doFilter(MonitoringFilter.java:138) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20) at com.ed.ecomm.edcore.web.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:92) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:659) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:285) at com.evermind[Oracle Application Server Contain
html:link throwing null pointer
Hi all, I'm in the process of upgrading our J2EE app from struts 1.2.4 to 1.3.8. We're also using tiles. I'm able to see the header tile but when it reaches the search.jsp tile I get: javax.servlet.jsp.JspException: ServletException in '/WEB-INF/jsp/common/search.jsp': null at org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:927) at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:465) at _web_2d_inf._jsp._common._layout._jspService(_layout.java:142) [SRC:/WEB-INF/jsp/common/layout.jsp:81] . . here's my jsp: <%@ taglib uri="http://struts.apache.org/tags-html"; prefix="html"%> <%@ taglib uri="http://struts.apache.org/tags-bean"; prefix="bean"%> <%%> : Select... http://www.google.gr";> <%--Advanced Search--%> I'm certain it's html:link, because if I comment it out the tile is showing. I've also checked with html:img and it shows fine, so this must be specific to html:link. Any ideas? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Dimitris Mouchritsas wrote: Well, one solution is to move the tld's to a directory and define them in web.xml. This seems to be working. However I've got some strange problems. For example in a tile I render a link for advanced search: <%@ taglib uri="http://struts.apache.org/tags-html"; prefix="html"%> <%@ taglib uri="http://struts.apache.org/tags-bean"; prefix="bean"%> <%--type="java.util.Date" />--%> />: Select... class="Text" /> class="SearchBTN" value="Search" /> <%--Advanced Search--%> and I get javax.servlet.jsp.JspException: ServletException in '/WEB-INF/jsp/common/search.jsp': null at org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:927) at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:465) at _web_2d_inf._jsp._common._layout._jspService(_layout.java:133) [SRC:/WEB-INF/jsp/common/layout.jsp:80] I know it's the link, because if I comment it out I get an exception on a different jsp and the tile shows up. I've also testet outside the link and it works. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] BTW is there an option in struts-config.xml (for v.1.3.8 at least) or somewhere else to notify struts to use xhtml compatible elements everywhere? So as to avoid having in every jsp? Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Well, one solution is to move the tld's to a directory and define them in web.xml. This seems to be working. However I've got some strange problems. For example in a tile I render a link for advanced search: <%@ taglib uri="http://struts.apache.org/tags-html"; prefix="html"%> <%@ taglib uri="http://struts.apache.org/tags-bean"; prefix="bean"%> <%--type="java.util.Date" />--%> />: Select... class="Text" /> class="SearchBTN" value="Search" /> <%--Advanced Search--%> and I get javax.servlet.jsp.JspException: ServletException in '/WEB-INF/jsp/common/search.jsp': null at org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:927) at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:465) at _web_2d_inf._jsp._common._layout._jspService(_layout.java:133) [SRC:/WEB-INF/jsp/common/layout.jsp:80] I know it's the link, because if I comment it out I get an exception on a different jsp and the tile shows up. I've also testet outside the link and it works. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Antonio Petrelli wrote: 2008/6/24 Dimitris Mouchritsas <[EMAIL PROTECTED]>: So, since they're in the jars I don't need to declare the tld's in web.xml right? Right, in fact I'm struggling to understand what is the problem, too :-D Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Could it be that oc4j is not loading the tld's from the jars? Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Antonio Petrelli wrote: 2008/6/24 Dimitris Mouchritsas <[EMAIL PROTECTED]>: OracleJSP: oracle.jsp.parse.JspParseException: /WEB-INF/jsp/common/layout.jsp: Line # 2, <%@ taglib uri="http://struts.apache.org/tags-tiles"; prefix="t" %> Error: Unable to load taghandler class: http://struts.apache.org/tags-tiles ... But why can't it find the tiles uri? I've included the struts-tiles-1.3.8.jar. Probably it is a caching problem (in Tomcat happens when you change libraries). Try cleaning up the work directory (I don't really know where it is in OC4J, sorry). Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] So, since they're in the jars I don't need to declare the tld's in web.xml right? Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Antonio Petrelli wrote: 2008/6/24 Dimitris Mouchritsas <[EMAIL PROTECTED]>: I get a 500 Internal server error when trying to access the home page. Can I see the stack trace? Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Hm, I think we're getting close. A colleague helped me. We had an ErrorHandlerServlet which was "eating" the exception. Now I get a meaningful 500: 500 Internal Server Error OracleJSP: oracle.jsp.parse.JspParseException: /WEB-INF/jsp/common/layout.jsp: Line # 2, <%@ taglib uri="http://struts.apache.org/tags-tiles"; prefix="t" %> Error: Unable to load taghandler class: http://struts.apache.org/tags-tiles Take a look at my changed layout.jsp: <%@ page contentType="text/html;charset=utf-8"%> <%@ taglib uri="http://struts.apache.org/tags-tiles"; prefix="tiles" %> <%@ taglib uri="http://struts.apache.org/tags-bean"; prefix="bean"%> <%@ taglib uri="http://struts.apache.org/tags-html"; prefix="html"%> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";> . But why can't it find the tiles uri? I've included the struts-tiles-1.3.8.jar. Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Antonio Petrelli wrote: 2008/6/23 Dimitris Mouchritsas <[EMAIL PROTECTED]>: A tile definition. I've tried a few combinations, but none is working. For example if I use I get no exception but a blank page is returned. I suppose that Tiles has not been configured correctly then. See: http://wiki.apache.org/struts/StrutsUpgradeNotes12to13 In particular, in the Tiles part: Add a chainConfig init-param in the web.xml pointing to the location of the chain-config.xml chainConfig org/apache/struts/tiles/chain-config.xml HTH Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Still no luck. #*$&#$&!@(*$ strus :) Anyway here's what I've done so far. Patch xdoclet 1.2.3 from http://opensource.atlassian.com/projects/xdoclet/browse/XDT-1673?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel to allow xdoclet to create files for struts 1.3. Updated commons-chain.jar to 1.2, commons-io.jar to 1.4. Added the init-param you said. Even though no exception is seen in the logs, I get a 500 Internal server error when trying to access the home page. Here's my web.xml related part: action org.apache.struts.action.ActionServlet config /WEB-INF/struts-config.xml chainConfig org/apache/struts/tiles/chain-config.xml debug 2 detail 2 application ApplicationResources 1 ...and here's the end of struts-config.xml: key="ERROR_RESOURCE_KEY" /> key="HELP_RESOURCE_KEY" /> value="/WEB-INF/tiles-defs.xml" /> See anything wrong? Regards Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Antonio Petrelli wrote: 2008/6/23 Dimitris Mouchritsas <[EMAIL PROTECTED]>: What exactly is this "home"? Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] A tile definition. I've tried a few combinations, but none is working. For example if I use I get no exception but a blank page is returned. Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Dimitris Mouchritsas wrote: Antonio Petrelli wrote: 2008/6/23 Dimitris Mouchritsas <[EMAIL PROTECTED]>: One thing to note though is we're using xdoclet 1.2.3 to create struts-config.xml for us. As I understand this version of xdoclet supports up to struts 1.2.x. Could this be the culprit? Probably. According to the source file: http://svn.apache.org/repos/asf/struts/struts1/tags/STRUTS_1_3_8/core/src/main/java/org/apache/struts/chain/commands/servlet/PerformForward.java it seems that a request dispatcher is not found, that is *really* strange, and, IMHO, can only happen when a webapp did not start correctly. Do you see an error at startup? Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] No, everything seems to start smoothly. I'll try to create a struts-config.xml file by hand just for the home action and see what happens. Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] I'm not sure it's the struts-config.xml file anymore. I'm using this: http://struts.apache.org/dtds/struts-config_1_3.dtd";> name="welcome" path="/Welcome.do"/> path="/Welcome" forward="/pages/Welcome.jsp"/> value="/WEB-INF/tiles-defs.xml" /> which is from another 1.3.8 sample app and I just added the action definition for /home. Still I get the same exception. Could it be that it's not finding a proper jar or something? Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Antonio Petrelli wrote: 2008/6/23 Dimitris Mouchritsas <[EMAIL PROTECTED]>: One thing to note though is we're using xdoclet 1.2.3 to create struts-config.xml for us. As I understand this version of xdoclet supports up to struts 1.2.x. Could this be the culprit? Probably. According to the source file: http://svn.apache.org/repos/asf/struts/struts1/tags/STRUTS_1_3_8/core/src/main/java/org/apache/struts/chain/commands/servlet/PerformForward.java it seems that a request dispatcher is not found, that is *really* strange, and, IMHO, can only happen when a webapp did not start correctly. Do you see an error at startup? Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] No, everything seems to start smoothly. I'll try to create a struts-config.xml file by hand just for the home action and see what happens. Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Antonio Petrelli wrote: 2008/6/23 Dimitris Mouchritsas <[EMAIL PROTECTED]>: Caused by: java.lang.NullPointerException at org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java:113) Mmm... Just a shot in the dark, did you put the commons-chain.jar in your classpath? Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Yep, right from the struts lib directory. One thing to note though is we're using xdoclet 1.2.3 to create struts-config.xml for us. As I understand this version of xdoclet supports up to struts 1.2.x. Could this be the culprit? That it doesn't produce a proper struts-config.xml? Because from what I saw web.xml is very similar to 1.3.8's web.xml from the blank web app example. Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Closing tag for html:hidden
Antonio Petrelli wrote: 2008/6/23 Dimitris Mouchritsas <[EMAIL PROTECTED]>: Thanks for the info for the form tag. The problem is we use tiles, so html:xhtml is not really an option. Why? does not produce any markup code, only tells Struts tags to render in XHTML. Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Ahh, ok, confused it with which produces the tag. Anyway, I'm trying to upgrade to struts 1.3.8 but I get an exception when trying to view the first page: null java.lang.NullPointerException at org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java:113) at org.apache.struts.chain.commands.servlet.PerformForward.perform(PerformForward.java:96) at org.apache.struts.chain.commands.AbstractPerformForward.execute(AbstractPerformForward.java:54) at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190) at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190) at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileged(Subject.java:500) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16) at com.ed.ecomm.edcore.web.filters.SecurityFilter.doFilter(SecurityFilter.java:196) at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20) at com.ed.ecomm.edcore.web.filters.MonitoringFilter.doFilter(MonitoringFilter.java:138) at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20) at com.ed.ecomm.edcore.web.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:92) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:659) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:285) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:126) at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192) at java.lang.Thread.run(Thread.java:534) - etendering > 17:15:56.265 DEBUG TilesAccessProxyAction- forwarding to tile definition: error.page etendering > 17:15:56.265 DEBUG ErrorHandlerServlet - doGet etendering > 17:15:56.265 DEBUG ErrorHandlerServlet - doPost() etendering > 17:15:56.265 ERROR ErrorHandlerServlet - RepException id:b5c7ee5ac0a8010101a8cf03a8763d4f etendering > 17:15:56.265 ERROR ErrorHandlerServlet - EXCEPTION: - id b5c7ee5ac0a8010101a8cf03a8763d4f, error.generic be.fedict.etendering.exception.EtenderingException: error.generic at be.fedict.etendering.web.servlet.ErrorHandlerServlet.logErrors(ErrorHandlerServlet.java:92) at be.fedict.etendering.web.servlet.ErrorHandlerServlet.doPost(ErrorHandlerServlet.java:53) at be.fedict.etendering.web.servlet.ErrorHandlerServlet.doGet(ErrorHandlerServlet.java:68) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileged(Subject.java:500) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:222) at com.evermind.server.http.EvermindHttpServletResponse.handleException(EvermindHttpServle
Re: Closing tag for html:hidden
Antonio Petrelli wrote: 2008/6/23 Dimitris Mouchritsas <[EMAIL PROTECTED]>: Notice that it doesn't close the tag properly like /> as required by xhtml. Is there a way to tell struts to close properly for xhtml or we have to upgrade? Use before the first tag of every JSP page. BTW I suggest to upgrade to Struts 1.2.9 (at least) because in Struts 1.2.4 does not produce XHTML-strict compliant code (in particular it creates the "name" attribute). Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Thanks for the info for the form tag. The problem is we use tiles, so html:xhtml is not really an option. A colleague will try to do a controller trick in web.xml, but from what I feel we'll have to upgrade. Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Closing tag for html:hidden
Hi all, We're using struts 1.2.4 in our project and we just noticed something; When rendering a element the html produced is: Notice that it doesn't close the tag properly like /> as required by xhtml. Is there a way to tell struts to close properly for xhtml or we have to upgrade? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Provide links from XDoclet validator tags
Hi once more, seems like a struts day to me :) Anyway, using struts 1.2.4 and XDoclet 1.2.3 is there a way to define an error message for a form which includes an argument or something? For example: /** * Set name. * * @param name the value to set. * * @struts.validator type="required,maxlength" * * @struts.validator-var name="maxlength" value="60" * * @struts.validator-args arg0resource="prompt.reg.orgname" * @struts.validator-args arg1value="${var:maxlength}" */ public void setName(String name) { this.name = name; } if the organisation name is missing the message produced is: Organisation Name is missing What I'd like to produce is: Organisation Name is missing. Is there a way to do it? Regards Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Provide a link from an error message
Dimitris Mouchritsas wrote: Hi again, If you've been following my threads a bit you'll see that we're developing an app using struts 1.2.4. I have another question, we'd like to provide a link in some of the error messages. But struts seems to change < to < I know that writing html in the ApplicationResources.properties file is bad so I thought we'd use parameters like: {0}{1}{2} is required Where {0} would be , {1} the text for the link and {2} but still struts converts < and >. The code we use to display the errors is this: <%-- Error messages --%> : key="prompt.close" /> Is there a way to do it? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Never mind, found it, . - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Provide a link from an error message
Hi again, If you've been following my threads a bit you'll see that we're developing an app using struts 1.2.4. I have another question, we'd like to provide a link in some of the error messages. But struts seems to change < to < I know that writing html in the ApplicationResources.properties file is bad so I thought we'd use parameters like: {0}{1}{2} is required Where {0} would be , {1} the text for the link and {2} but still struts converts < and >. The code we use to display the errors is this: <%-- Error messages --%> : key="prompt.close" /> Is there a way to do it? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Custom messages
Antonio Petrelli wrote: 2008/6/16 Dimitris Mouchritsas <[EMAIL PROTECTED]>: Hi all, we're using struts 1.2.4 in our project and we have 3 types of messages to show the user: 1) Confirmational, with say a green tick mark, 2) Informational, with a classic i in a bubble 3) Error messages, with the classes red rectangle. Currently I use saveErrors and saveMessages in my actions but that gives me only 2 kinds of messages; errors and all others. Is there a way to add a 3rd type? I think I should do it by errors.add("My.Custom.Identifier", ); but I'm not sure. Well, this is the right thing to do :-) In fact, saveErrors and saveMessages put the messages using special keys: Globals.ERROR_KEY: http://struts.apache.org/1.2.4/api/org/apache/struts/Globals.html#ERROR_KEY Globals.MESSAGE_KEY: http://struts.apache.org/1.2.4/api/org/apache/struts/Globals.html#MESSAGE_KEY HTH Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Ok, I've succeeded, but in trying to have a uniform method for all messages I lost struts validator's errors. For example, in the action: ActionMessages msg = new ActionMessages(); msg.add(MyConstants.MESSAGE_CONFIRM, new ActionMessage("prompt.OK")); msg.add(MyConstants.MESSAGE_INFO,new ActionMessage("prompt.modify")); msg.add(MyConstants.MESSAGE_ERROR, new ActionMessage("prompt.close")); saveMessages(request, msg); then in the jsp, we have a tile to show all messages, regardless of where they come from: property="<%=MyConstants.MESSAGE_CONFIRM%>"> <%--Your changes have been accepted.--%> property="<%=MyConstants.MESSAGE_CONFIRM%>"> key="prompt.close" /> <%-- Informational Messages --%> property="<%=MyConstants.MESSAGE_INFO%>"> property="<%=MyConstants.MESSAGE_INFO%>"> key="prompt.close" /> <%-- Error messages --%> property="<%=MyConstants.MESSAGE_ERROR%>"> : property="<%=MyConstants.MESSAGE_ERROR%>"> <%-- First name is required. Last name is required. --%> key="prompt.close" /> But by using this method, the errors that validator adds, are not displayed, because they're save under Globals.ERROR_KEY. Is there a way to tell validator to save its errors as a message under my own custom key? Again I point out that the only reason I want this is to have a uniform way of dealing with messages, not having to use saveErrors. But if this is not correct I guess I'll revert into using saveErrors. Any suggestions? Regards Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Custom messages
Hi all, we're using struts 1.2.4 in our project and we have 3 types of messages to show the user: 1) Confirmational, with say a green tick mark, 2) Informational, with a classic i in a bubble 3) Error messages, with the classes red rectangle. Currently I use saveErrors and saveMessages in my actions but that gives me only 2 kinds of messages; errors and all others. Is there a way to add a 3rd type? I think I should do it by errors.add("My.Custom.Identifier", ); but I'm not sure. Also, what would I need to write in the jsp. If you can show me some code, or provide a link somewhere I'd be grateful. Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: How can i user Swing as "V" in the Struts MVC
Ehteshamul Haque wrote: I dont know whether is it possible or not. But the question is interesting to me. If possible, please someone answer. Ehteshamul Haque 'A great man is not the one who never falls, but the one who rises every time he falls' --- On Sat, 6/14/08, (¯`·.k ! k !.·´¯) <[EMAIL PROTECTED]> wrote: From: (¯`·.k ! k !.·´¯) <[EMAIL PROTECTED]> Subject: How can i user Swing as "V" in the Struts MVC To: "apache struts" Date: Saturday, June 14, 2008, 10:03 PM Hi .. i m going to build a struts based application but i dont want to use JSP's instead of JSP's i want to use Swing GUI .. how can i communicate Swing GUI with struts app and how i will get the response back .. e.g. search results waiting for reply - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Well, I suppose you could use javascript-applet communication, but it seems a bit far fetched. I don't think your architecture is correct here. Swing guis are supposed to talk to the business layer, not to the controller layer. Regards Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Is there a subtile(s)?
Antonio Petrelli wrote: 2008/6/5 Dimitris Mouchritsas <[EMAIL PROTECTED]>: Your code seems ok. Do you see an error in the log? No, no errors on the log. :( Does your generated HTML contain the elements? Can I see the code of "login.jsp" for example? Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Ahh, looking at the generated HTML showed the problem:
Re: Is there a subtile(s)?
Antonio Petrelli wrote: 2008/6/5 Dimitris Mouchritsas <[EMAIL PROTECTED]>: While the word Menu shows up in the final page, I don't see menu1,2 or 3. Your code seems ok. Do you see an error in the log? Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] No, no errors on the log. :( Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Is there a subtile(s)?
Antonio Petrelli wrote: 2008/6/4 Dimitris Mouchritsas <[EMAIL PROTECTED]>: The menu would look something like: . So in essence there are 3 seperate menus there. Ok, you can use "definition in a definition". For example: There will need to be logic to hide/show specific items in each menu, according to a user's role. You can use a controller (a Tiles controller) to create items to show in a JSP page. HTH Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Hi again, I'm having some trouble understanding your suggestion. Here's what I've done so far: tiles-defs.xml: = value="/WEB-INF/jsp/common/opening_report.jsp"/> layout.jsp: === menu.jsp: == Menu While the word Menu shows up in the final page, I don't see menu1,2 or 3. Could you please elaborate some more? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Is there a subtile(s)?
Antonio Petrelli wrote: 2008/6/4 Dimitris Mouchritsas <[EMAIL PROTECTED]>: Hi all, I'm searching if there's a meaning like subtiles in struts. We have one tile, "menu", which will hold 3 menus. Should we break it into 3 different tiles, say menu_admin, menu_info, menu_login or can we define it in another way? What do you mean with "menu" here? What version of Struts and Tiles are you using? Antonio - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] We're using Struts 1.2.4. The menu would look something like: == Logged in === John Doe (my role) Last login: . > My Profile > My Notifications > My homepage > Log out == Administration === > Organization Management > User Management > Email User == Information === > News > Statistics . with > I denote links. So in essence there are 3 seperate menus there. There will need to be logic to hide/show specific items in each menu, according to a user's role. Regards Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Is there a subtile(s)?
Hi all, I'm searching if there's a meaning like subtiles in struts. We have one tile, "menu", which will hold 3 menus. Should we break it into 3 different tiles, say menu_admin, menu_info, menu_login or can we define it in another way? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Using ActionMessages
Hi all, We use Struts 1.2.4 in our application and I'd like to refactor some code to use ActionMessage(s) instead of ActionError(s). Can somebody show me a solid example (or point me to an article) on how to do it? Also, when I tried before to completely remove ActionErrors, the action was complaining that the validate method is required to return ActionErrors and not ActionMessages. Any workaround? Thanks Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Selecting a jsp according to locale
Antonio Petrelli wrote: 2008/5/13 Dimitris Mouchritsas <[EMAIL PROTECTED]>: Hi all, I want to show a system requirements page according to the web page's locale. Can I use the tiles-defs.xml to do it or I need to write code in a jsp? You can use the Tiles-included locale support. You need simply to add the locale code in the file name. For example, if you have "tiles-defs.xml", you need to create a new "tiles-defs_it_IT.xml" for Italian locale, defining only the different definitions. HTH Antonio Ahh, thanks, now it works. I guess I wasn't careful when reading the article and I had named the file: tiles-defs-it.xml. Now with the underscore it works great! Thanks once again :) Dimitris - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Selecting a jsp according to locale
Laurie Harper wrote: Dimitris Mouchritsas wrote: Hi all, I want to show a system requirements page according to the web page's locale. Can I use the tiles-defs.xml to do it or I need to write code in a jsp? Thanks I'm not sure what you want to achieve. If you just want to localize the page, you can do so using the I18N facilities provided by Struts. If you actually need to render a different JSP per locale for some reason, it will be more involved. Either way, the specifics depend on which version of Struts you are using. Try posting more details of exactly what it is you need to do, and what environment you are working in (Struts version, etc.). L. My version is Struts 1.2.4, running on OC4J 10.1.2.0.2 (which is pretty old). What I actually want to do is to display a system requirements page according to the user's locale which has been set before hand. So I suppose it would be easier to have 3 different jsp's? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Selecting a jsp according to locale
Hi all, I want to show a system requirements page according to the web page's locale. Can I use the tiles-defs.xml to do it or I need to write code in a jsp? Thanks - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Using xdoclets and minlength from validator
Hi all, I'm trying to make a password field be at least 6 characters in length but the check doesn't seem to work. Here's my code: /** * @struts.validator type="required,minlength,maxlength,mask" * * @struts.validator-var name="minlength" value="5" * @struts.validator-var name="maxlength" value="20" * @struts.validator-var name="mask" value="^[a-zA-Z_0-9-]*$" * * @struts.validator-args arg0resource="prompt.password" * @struts.validator-args arg1value="${var:minlength}" * @struts.validator-args arg2value="${var:maxlength}" * * @param password The password to set. */ public void setPassword(String password) { this.password = password; } Any ideas? Thanks - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Implementing a back button without Javascript
Antonio Petrelli wrote: 2008/3/19, Dimitris Mouchritsas <[EMAIL PROTECTED]>: we're using struts 1.2.4 in our project and I'm trying to implement a back button for a 3 step registration procedure. The problem is I'd like to do it without using javascript. I've discovered html:cancel which works nicely for ...canceling. But I couldn't find anything similar for the back button. Any ideas? You need to manage it on the server side. There are many ways to do it, just to mention a pair: 1) the button points to the previous action; 2) implement a history manager that manages the history of called actions and, when called "back" (e.g. with a "history action") you go back in the history. Ciao Antonio The first case would suit me fine. But how would I do this exactly? Use a simple button instead of and include it in a element? I'm trying to do this as uniform as possible as with the other buttons which are , and . My current code looks like this: but I still need to add a back property to the form bean which is not really needed.
Implementing a back button without Javascript
Hi all, we're using struts 1.2.4 in our project and I'm trying to implement a back button for a 3 step registration procedure. The problem is I'd like to do it without using javascript. I've discovered html:cancel which works nicely for ...canceling. But I couldn't find anything similar for the back button. Any ideas? Thanks - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Managing xdoclet tags with prepare action in struts 1.2.4
Hi all, I'm trying to make some code run for a project in the company. For every action we have a prepare action. The project build but when I try to access the action I get an application error, probably from struts. No exception is thrown in the server log (oc4j 10.1.2 btw). Also I can see that the prepare action is entered. Here's my xdoclet tags for the prepare action: /** * @struts.action name="prepareRegisterEOOrg" path="/prepareRegisterEOOrg" *validate="false" * * @struts.action-forward name="goRegisterEOOrg" path="/registerEOOrg" */ and here it is for the action that actually does the work: /** * @struts.action name="registerEOOrg" path="/registerEOOrg" *validate="true" input="registerEOOrg" * * @struts.action-forward name="goHome" path="/home.do" redirect="true" * @struts.action-forward name="error" path="/registerEOOrg" */ The form bean has the name of RegisterEOOrgForm and the jsp is called registerEOOrg.jsp Any idea what's wrong? Also please send a link if you know any tutorial that uses prepare and dispatch actions, along with xdoclet. Thanks. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]