Dynamic form in JSP

Hi
I want to do different operations in a single form. It is like saving data,clearing all and save&clear submit buttons. How to perform all these in a same jsp program (it includes database operations too).
Thanks.
Jency.

First break up the entier set of operations into smaller tasks, and then it will be easier to think of solution for each small task.
1) Are you displaying a form? You can build a form with HTML , input tags and submit and reset buttons.
2) It's a terrible idea to combine everything in just one JSP because, JSPs are only meant to display the front-end. But, if you put the middle tier buisiness logic and the end tire database logic all inside one JSP then it will be extreamly difficult to understand and maintain.
So, consider breaking up your application into separate layers.
Front layer, Middle Business Layer, Database Layer.
3) Make use of JSTL 1.1 inside JSP, if you still want to perform database operations inside a JSP then JSTL comes with SQL tags, take a look at JSTL here:
http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/index.html
and here:
http://jakarta.apache.org/taglibs/doc/standard-doc/intro.html

Similar Messages

  • About Dynamic Form in JSP

    Hi,
    I want to create jsp page which can add/delete/modify and even move text boxes with label to one place to other.
    i found partially solution like Xform and even thru java script. But still don't know how to do that.
    Can any body have ever come across this type of form.
    please give me your valuable comments may be from there i will get some trick.
    Thanks,
    Ankur
    Edited by: joyhotfever on Sep 3, 2008 2:04 AM

    Your question is too general.
    Learn HTML. Learn Java. Learn JSP/Servlets. Learn JavaScript -if necessary.
    Then write code accordingly. Whenever you stucks while solving a technical coding problem, you're always welcome to ask it here.

  • Dynamic forms in struts

    Hi,
    I have a pretty difficult problem that I don't know how to solve using struts. I need to generate dynamic surveys from a database. The structure of the survey can be different for every different user. I really want to use the struts Form classes but I'm not sure how to do this. The only way I can think of is messy...
    For every new type of survey generated from the database...
    1. Generate a new class definition for the struts Form object and compile that.
    2. Every struts Action class that interacts with the new dynamic Form classes will need to use reflection on the dynamic Form object to be able to pull all of the data from that form.
    I'm sure there are many web sites where forms are dynamically generated and I would think this problem has already been solved. Does anyone out there have any ideas?

    Try to follow this way:
    1 provide actions chain in your configuration file like this:
             <form-bean
                  name="addFlatForm"
                  type="app.owner.forms.AddFlatForm">
                </form-bean>
            <action
                 path="/InitAddFlatForm"
                 type="app.owner.actions.InitAddFlatFormAction"
                 attribute="addFlatForm"
                 validate="false"
                 parameter="owner.extendedplace;place;/pages/AddFlat.jsp">             
            </action>
            <!-- "/pages/AddFlat.jsp" - jsp page with html:form on it-->     
            <action
                 path="/AddFlatForm"
                 type="app.owner.actions.AddFlatAction"
                 name="addFlatForm"
                 validate="true"
                 input="/pages/AddFlat.jsp">
                 <forward
                      name="success"
                      path="/shortinfo/Welcome.do"></forward>
            </action>2 first action(InitAddFlatFormAction) will be "prepare" action, where you must create new instance of the ActionForm descendant with Map, List, array etc definition. where your dynamic fields will be located , and fill the keys value from your database.
    public class InitAddFlatFormAction extends Action{
         public ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response){
              //obtain parameters
              String[] params = ActionHelper.parseParameter(mapping, 3, Constants.PARAMETER_SEPARATOR);
              //get extended place from session attribute
              ExtendedPlace currPlace = (ExtendedPlace)ServletUtils.getAttribute(
                        request, params[0], ServletUtils.SESSION_SCOPE);
              //create form if form == null
             if (form == null) {
                  System.out.println("InitAddFlatFormAction::execute method: create new instance of action form.");
                  //create new form instance
                  form = new AddFlatForm(new HashMap<String, Object>());
                  //set form to selected scope attribute
                if ("request".equals(mapping.getScope()))
                     ServletUtils.setAttribute(request,
                               form, mapping.getAttribute(), ServletUtils.REQUEST_SCOPE);   //just set the value to selected scope
                else
                     ServletUtils.setAttribute(request,
                               form, mapping.getAttribute(), ServletUtils.SESSION_SCOPE);   //just set the value to selected scope
             //fill the form
             AddFlatForm flatForm = (AddFlatForm) form;
             flatForm.setValue(params[1], currPlace);
             return URIUtils.forwardAction(params[2]);
         }3 second action(AddFlatAction) will be "process" action. This action can be used when your data are successful validated.
    //any your actions4 form bean(ActionForm desctndant)
    public class AddFlatForm extends ActionForm{
         public AddFlatForm(Map<String, Object> map){
              super();
              //check input arguments
              AssertHelper.notNullIllArg(map);
              setMap(map);
         private Map<String, Object> map = null;
         public void setMap(Map<String, Object> map) {
              this.map = map;
         public Map<String, Object> getMap() {
              return this.map;
         public void setValue(String key, Object value){
              getMap().put(key,value);
         public Object getValue(String key){
              return getMap().get(key);
        public ActionErrors validate(ActionMapping mapping,
                HttpServletRequest request) {
            return (null);
    }And than in your jsp page you can use something like this:
    <%@ taglib uri="/tags/struts-html" prefix="html" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
                                            <c:set var="placeId">
                                                 <bean:write name="extPlace" property="placeInfo.id"/>
                                            </c:set>
                                            <c:set var="groupId">
                                                 <bean:write name="groups" property="filterGroupInfo.id"/>
                                            </c:set>
                                            <c:set var="filterId">
                                                 <bean:write name="filters" property="filter.id"/>
                                            </c:set>
                                            <bean:message name="filters" property="filter.filterDescription"/>
                                            <html:text property="value(${placeId};${groupId};${filterId})"/>                                                                 Something like this are displayed in struts-example.war (example application for struts1.1)
    pay attention for classes
    EditRegistrationAction.java and SaveRegistrationAction.java
    sorry for bad english... :)

  • Can we call a workflow form a JSP and/or form a Java Class?

    Is it possible to call a workflow form a JSP and/or form a Java Class?

    Below is some xpress code I wrote once, used to dynamically lauch workflows from within a workflow. Since it basically uses java classes, you reuse these in your java program or jsp:
    - create a new generic object
    - call the setId, put, ... methods on it
    - set the input variables for the workflow by putting them into the generic object
    - call the checkinView method on a LighthouseContext object which launches your workflow.
    If all you need is starting a workflow from a jsp, you might also want to take a look at the tasks/taskLaunch.jsp jsp. This is an out of the box jsp which allows launching of tasks. If I remember correctly you have to give an url parameter which specificies the name of task you want to start: tasks/taskLaunch.jsp?id=<workflow-name>
    - Robin
    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE TaskDefinition PUBLIC 'waveset.dtd' 'waveset.dtd'>
    <TaskDefinition name="MVG_TD_LaunchWorkflow" taskType="Workflow" executor="com.waveset.workflow.WorkflowExecutor" suspendable="true" syncControlAllowed="true" execMode="sync" execLimit="0" resultLimit="0" resultOption="delete" visibility="runschedule" progressInterval="0">
         <Extension>
              <WFProcess name="MVG_TD_LaunchWorkflow">
                   <Variable name="workflowName" input="true"/>
                   <Variable name="taskInstanceName" input="true"/>
                   <Variable name="inputs" input="true"/>
                   <Variable name="processView"/>
                   <Activity name="start">
                        <Transition to="createProcessView"/>
                   </Activity>
                   <Activity name="createProcessView">
                        <Action>
                             <block trace="true">
                                  <set name="processView">
                                       <new class="com.waveset.object.GenericObject"/>
                                  </set>
                                  <invoke name="setId">
                                       <ref>processView</ref>
                                       <s>ProcessViewer</s>
                                  </invoke>
                                  <invoke name="put">
                                       <ref>processView</ref>
                                       <s>task.process</s>
                                       <ref>workflowName</ref>
                                  </invoke>
                                  <invoke name="put">
                                       <ref>processView</ref>
                                       <s>task.taskName</s>
                                       <ref>taskInstanceName</ref>
                                  </invoke>
                                  <if>
                                       <notnull>
                                            <ref>inputs</ref>
                                       </notnull>
                                       <then>
                                            <invoke name="assimilate">
                                                 <ref>processView</ref>
                                                 <ref>inputs</ref>
                                            </invoke>
                                       </then>
                                  </if>          
                             </block>
                        </Action>
                        <Transition to="checkInProcessView"/>
                   </Activity>
                   <Activity name="checkInProcessView">
                        <Action>
                             <block trace="true">
                             <invoke name="checkinView">
                                  <invoke name="getLighthouseContext">
                                       <ref>WF_CONTEXT</ref>
                                  </invoke>
                                  <ref>processView</ref>
                                  <new class="java.util.HashMap"/>
                             </invoke>
                             </block>
                        </Action>
                        <Transition to="end"/>
                   </Activity>
                   <Activity name="end"/>
              </WFProcess>
         </Extension>
         <MemberObjectGroups>
              <ObjectRef type="ObjectGroup" id="#ID#Top" name="Top"/>
         </MemberObjectGroups>
    </TaskDefinition>

  • Dynamic Form ---- How to define mx:model or Param/value

    I have created a dynamic Form reading input type from
    external .xml file. Does anyone have advice concerning sending the
    form data to an external .jsp or .php file without knowing what
    your <mx:Model> will be? Whenever I try to write:
    <mx:Model>
    <root>
    <q1>data</q1>
    <q2>data</q2>
    </root>
    </mx:Model>
    I receive this error: 1120:Access of undefined property
    event. I am sure this is because the form elements are created
    using actionscript and not within mxml.
    I also tried sending it within actionscript using the
    send.data(param) like this, same error:
    var service:HTTPService = new HTTPService();
    //service.contentType = 'application/xml'
    service.resultFormat = 'e4x';
    //service.destination = 'DefaultHTTP';
    service.url = 'URL removed';
    service.method = "POST";
    service.addEventListener("result",handle_loginResult);
    service.addEventListener("fault",handle_loginfault);
    var o:Object = new Object();
    o.q1 = event.q1;
    o.q2 = event.q2;
    service.send(o);
    Example
    of the Application with elements rendered
    If you would like to see the complete code:

    What are you expecting "event" to refer to?
    Put an id on your Model tag, then you can use it to reference
    the data.
    Note, mx:Model builds a tree of dynamic objects. You will be
    happier in the long run if you use mx:XML instead.
    Tracy

  • Dynamic form processing in struts

    Hi all,
    I need your help regarding dynamic form elements form processing.
    Here is my JSP Script,
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
    <html:html>
    <HEAD>
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
         pageEncoding="ISO-8859-1"%>
    <TITLE>Processing Dynamic Forms</TITLE>
    <script type="text/javascript">
    //function which adds new row
    function AddRow()
         tb=document.getElementById("demo");
         // attach counter
         lnrows = tb.rows.length;
         //alert(lnrows);
         newrow = tb.insertRow(lnrows);
         var fourth_col = "amt"+lnrows;
         cell3=newrow.insertCell(0);
         cell3.innerHTML="<center><input type='text' id='"+fourth_col+"' name='"+fourth_col+"' size='10'/></center>";
         document.getElementById("cntr").value = lnrows;
    // function to delete row
    function DeleteRow()
         tb=document.getElementById("demo");
         lnrows = tb.rows.length;
         //alert(lnrows);
         if(lnrows > 2)
              tb.deleteRow(lnrows-1);
              document.getElementById("cntr").value = tb.rows.length - 1;
    </script>
    </HEAD>
    <BODY>
    <html:form action="/dynaActions">
    <TABLE id='demo' align='center' width='80%' border='1'>
    <TR>
         <TH width='25%'>Party Name</TH>
    </TR>
    <TR>
         <TD align='center'><input type='text' id="party1" name="party1" size="30" /></TD>
    </TR>
    </TABLE>
    <TABLE align='center' width='80%' border='0'>
    <TR align="right">
    <td>
         <html:button property="Add" value="Add" onclick="AddRow();" ></html:button>
         <html:button property="Remove"  value="Remove" onclick="DeleteRow();"></html:button>
    </td>
    </TR>
    <TR align="center">
    <td>
         <input type='hidden' id="cntr" name="cntr" value="1" />
         <html:submit/>
    </td>
    </TR>
    </TABLE>
    </html:form>
    </BODY>
    </html:html> As you seen there is dynamically form elements generated as many as required. Now how do I process this with ActionForm & Action?
    Regards,
    Mahesh

    Hi rrhegde,
    Thanks for response.
    Ok, So instead of making it party1, party2, party3, party4, .............................
    if I make it party[1], party[2], party[3], party[4],.............................
    But then how do I process this array. Since the array length will not be fixed, it depends upon users.
    If possible pls provide me some example code on this.
    Thanks & Regards,
    bonzy

  • Dynamic Form componants in my jsf page?

    how could i make dynamic form componant in my jsf page ,depend on user inputs or result from database or whatever , where i use sun studio creator ???

    you need to use the "rendered" attribute of the components...
    for example in your jsp put this...
    <h:outputText value="Hello" rendered="#{myBean.renderHello}"/>
    the render hello method looks like this in your backing bean "myBean"
    public boolean getRenderHello() {
    return true; // or false
    if getRenderHello() returns true, "Hello" will be displayed, if getRenderHello() returns false, it will not...
    you can also use expressions in the jsf... for example...
    <h:outputText value="Hello" rendered="#{myBean.someNumber == 5}"/>
    if the "getSomeNumber()" method in your backing bean returns 5 it will be true and "Hello" will show up... otherwise it won't... :)
    Hope this helps...
    -Garrett

  • Create a dynamic form where selected text boxes appears, based on options chosen in a drop-down box

    HELP!!! Can anyone please provide some guidance on how to create a dynamic form where selected text boxes appears, based on options chosen in a drop-down box.
    I have a form which – based on the department that's selected from a drop-down box – will have different form fields/text boxes, etc, made available.
    Is this possible in LiveCycle, if so, can you please provide the script/info - as needed.
    Thanks,

    In the preOpen event of the second dropdown list you put something like (in formCalc):
    if (dropdown1 == 1) then
    $.clearItems()
    $.setItems("Year, 2 Year,  3 Year")
    elseif (dropdown1 == 2) then
    $.clearItems()
    $.setItems("3 Year,  4 Year")
    endif

  • Get values from dynamic form items

    Hi All,
    I create a dynamic form with text input component
    private function buildForm():void{
                    var numberOfColumns:Number = 5
                    var formItem:FormItem = new FormItem();
                    var hBox:HBox = new HBox();
                    for(var i:Number=0; i< numberOfColumns; i++) {
                        var formInput:TextInput = new TextInput();
                        formInput.text = "test";
                        formInput.id = "txt_" +i;
                        hBox.addChild(formInput);
                    formItem.addChild(hBox);
                    loansForm.addChild(formItem);
    I can see the text input components, update the values.
    How can I get the updated values from the input components?
    I try  this["txt_" + i].text  but not working. It's not finding the component with the dynamic value.
    Any ideas?
    Thanks
    Johnny

    Hi,
    Here is the related thread, u will get some help
      http://forums.adobe.com/message/3075226
    Thanks and Regards,
    Kanchan Ladwani | [email protected] | www.infocepts.com

  • How to create a dynamic form with bind variables :schema & :table_name

    My application has two LOV's, one to select a schema, and the next to select a table within that schema. I then have a button which passes me to a report which displays the data in that table.schema.
    I now want to create a link to a form where I can edit the record based on the rowid of that table.schema, but it doesn't appear that I can create a dynamic form where I pass the schema.table_name and rowid. Is this possible? Can anyone advise how I can do this? The form builder only wants a fixed schema/table name.
    Thanks in advance.
    Stuart.

    Hi Stuart,
    In this sort of situation, you will need to be a bit creative.
    I would suggest a pipeline function called as if it was a report.
    Then you can pipe out the required fields.
    Since you will have a variable number of fields, you could use two of the multi row field names for your field names and values.
    Then after submit, you can create your own procedure to loop through the fields (stored for you in the Apex package) and update the table as required.
    Not very specific I'm afraid, but it should work.
    Regards
    Michael

  • Dynamic Forms and WF

    Hello,
    I have designed a dynamic form, where user can add rows dynamically by clicking a button on the form, the form is working fine in preview in designer.
    this form is initiating a LC WF process, but, if I deploy this form to form manager as an XDP and choose to render it to PDF, adding rows function does not work, however if I save this as dynamic PDF from LC designer and deploy it again to form manager, it works !!
    However, I can not use PDF generated from LC Designer since I found that commenting and annotations are not working ( I am using acrobat ) which is an important feature, also, web services calls are not working even, again from Acrobat!
    How can I set the form server installed with workflow server to render XDP templates into dynamic PDF forms ?
    Or alternatively how to enable commenting and fix web service calls in PDF rendered form ?
    Thank you for help,
    Greetings,

    By default Forms and Form Manager are configured to render a PDF as either static or dynamic based on some values in the XDP. By default those values will tell it to render a static PDF. What you can do, in Designer save as a dynamic PDF, then open the dynamic PDF in Designer and save as an XDP. Upload that XDP to Form Manager, the tags will be present to tell it to be rendered as a dynamic PDF. There's a better way if you are using Designer 7.1 and Forms 7.1, but since I don't know your environment this is a way that will work regardless of versions.
    Annotations will not work in dynamic PDF's though. Currently annotations make no sense in dyanmic PDF's since the template of the PDF can dynamically change while annotations are bound to a specific location. IE: You have a dynamic PDF that is initial 4 pages and add an annotation to page 4. Later the template of the PDF changes based on data and user interaction and it is now a 2 page PDF, but the annotation is still on page 4 which no longer exists...
    Chris
    Adobe Enterprise Developer Support

  • Remove scroll bars in dynamic form

    Hi all,
    I'm starting to kick myself every time I put a post here.  Apologies and thank you for everyone's help - slowly but shortly I'll be one of the people answering the questions.
    Really easy one (I think).  A have a dynamic form, which updates a dynamic list.  Is there a way to alter a text area in the dynamic form, so that it is a fixed area  i.e. when you get to the end of the line/characater usage, the cursor goes down to the next line rather than creating a horizontal scroll bar and running forever into the distance.  I have played around with Wrap options without luck, the css doesn;t seem to play much of a part as this is an actual text area in Dreamweaver as opposed to a CSS clipping in the list.
    Thanks again,
    Nathan

    NJFuller wrote:
    Perfect! Thank you Albert.  Is it possible to add virtual wrap to a box in a dynamic list?  As that is not presented in a normal html form'ish style way.....?
    Hi Nathan,
    as a Dynamic List displays pure text only, you´ll need to help yourself by formatting the displayed column using PHP. There are several ways to add "virtual" line breaks, and the most straightforward (though certainly not the most elegant) solution would be to apply the PHP function wordwrap which wraps a string to a given number of characters.
    The following example will wrap the text after 40 chars, and the "wordwrap" function will - as always - have to replace ADDT´s default "KT_FormatForList" function:
    <?php echo wordwrap($row_rsqueryname1['columnname'], 40, "<br />\n"); ?>
    Cheers,
    Günter

  • How to make my dynamic form pages flow correctly?

    I have created a dynamic form which has multiple questions with expandable text fields that will take multiple pages once completed.  I do not know how to make the form flow correctly past the first page.  I can attach the form if I knew how to do that.

    Thank you Paul.  Your editing assistance was greatly appreciated. I think I now understand that there should be only one page subform that is flowed, regardless of how many text box objects I have in my questionnaire. This did the trick.

  • Is it possible to update multiple tables with a dynamic form?

    I have columns from two tables populating a dynamic form. I am trying to have the form update both tables on submit. I have tried both a linked transaction and a custom transaction but I am not making progress. Only the master table is being updated. Is it possible with ADDT to update two tables with a dynamic form?

    I meant
    SXMSMSTAT
    SXMSSYERR
    Thanks.

  • My dynamic form - issue with saving data (urgent-i would greatly appreciate any help)

    Hello,
    I have some problems with this dynamic form (created in livecycle)  http://www.pathology.ubc.ca/Academic_Activity_Data_Form_Jan_4_2013.pdf .  It doesn't save data unless I add a' new row' to any of these tables.   There are a few text fileds and if I type anything in there data won't be saved unless I trigger it by adding randomly a table row.  This is big problem as this form will be used for updates and if I want to change any of my entered records I will always have to remember to 'add a new row' otherwise just adding/changing text won't be saved. This might sound confusing but you will understanding what is going on if you type in your name and save the form and then type in your name, add a table row and save the form (first case won't be saved second will).
    I would greatly appreciate any help.
    Debbie

    Hi Marco Russo ,
    = CALCULATE (
        SUM ( [measure] ),
        PARALLELPERIOD (
            SAMEPERIODLASTYEAR ( DateTime[DateKey] ),
            0,
            QUARTER
    I have used the above DAX function it is working fine and i have applied same for Year , Quarter and Month 
    But when i remove month filters (Slicer) and Year filters in Power view report
     it is showing total Year values for Year and Quarter values
    for Quarter etc..
    Like below i am getting 
    Last Yr Month Amt   Current Yr Month Amt   Last Yr Qtr Amt   Current Yr Qtr  Amt    Last Yr     Current Yr
     10000                     30000                              10000                30000
                        30000       30000
    but i need Blanks in report if i am not selecting any filters
    thanks,
    Sreeni

Maybe you are looking for

  • Transfer devices between lines.

    I have a family plan with smartphone and basic phone, basic phone's contract is up so can I buy Iphone for it and transfer it to smartphone's line (therefore starting new contract on basic phone) without hassles?

  • Creating a spatial index problem

    Hi there I have to create a table in Oracle Spatial and use it with MapInfo MapX 4.51 OCX to insert some features in it. I read a thread in the MapX forum where I learnt that I had to create my table (CREATE TABLE statement), add a record in MAPINFO_

  • Different CCR result when compared to OM17 result

    Hello All ,                       What currently we have seen is when we manually delete stock in SAP APO using RLC DELETE and run CCR report it shows that the Stock is INCONSISTENT but when we run the OM17 for STOCKS it shows that STOCK is CONSISTEN

  • Can't deploy hello1 tutorial

    Hi, I am trying to make hello1.war. asant works fine but when I finish deploying, I get complain that hello1.war is corrupted. I get error Error Name : Error in file [ WEB-INF/web.xml ] ** Parsing error, line -1, uri null Error Description : Error: P

  • Problematic Button Sound audio latency occuring in Windows only

    hi we have a music composer game for school children where they click buttons to play short samples in time with a backing track. Our .swf file when run on a Mac works fine with no discernible latency. When played on a Windows machine ( and also seem