Struts and BC4J Datasource tag

Why is the BC4J Datasource tag not supported in a Struts project?

It isn't a bug in MarlinCore. You just need to set the <form>s method to POST.

Similar Messages

  • Struts 1.2.4 and BC4J in JDev 9.0.3.4

    Hi,
    I did some sample code using Struts and BC4J in JDev 9.0.3.4. I was using the Struts version that came with the JDev.
    Then I downloaded Struts 1.2.4 and unpacked it instead of the shipped version and backed up the old one. I did another sample application in a new project and it gave me this error
    java.lang.NoSuchMethodException: Bean has no property named application
    It's not recognizing the
    <set-property property="application" value="TPSModule"/>
    in the struts-config.xml file.
    When I restore the old version libraries in the WEB-INF/lib, everything works fine.
    Can I not use Struts 1.2.4 with JDev 9.0.3.4?
    Any help is appreciated.

    No the article is not applicable for 9.0.3 I've never tested the compatibility of the 9.0.3 + Struts integration - obviously it does not work.
    What does work is the ADF bindings used in 9.0.5 and above which can be safely used with newer versions of Struts.

  • Adf-Struts/JSP/BC4J- and setting date fields from jsp

    Hi,
    I'm working with the new ADF Frameworks (JDev 9.0.5.1) and ran into some questions regarding exception handling using BC4J, Struts and JSPs.
    I have a DATE column in database and an entity and VO with a datefield with type oracle.jbo.domain.Date.
    My JSP shows a textfield and the user should enter a valid date. Everything fine, until date is of wrong format or contains illegal characters...
    Problem:
    ADF tries to do a setAttribute on the datefield in VO row which expects a parameter with type oracle.jbo.domain.Date. When the user entered e.g. "NiceWeather" as date, I get an IIlegalArgumentException while converting to the correct Date format. This exception isn't thrown by bc4j as AttrValException and therefore my JSP renders a global error instead of a message directly behind the date field.
    I tried to validate the datefield in my DataForm and in my Action in the validateModelUpdates() method, but with no fitting solution.
    Any ideas how to validate a datefield with adf/struts/jsp/bc4j?
    Thanks for your help!
    Torsten.

    Torsen - In the first instance I'd recommed that you try and handle it declaritively using the Struts Validator Framework . See http://otn.oracle.com/products/jdev/howtos/10g/StrutsValidator/struts_validator_howto.html
    There is a section in there on how to use the validator with ADF databound pages and you can check the format the user enters via generated JavaScript.
    Also check out the matching sample project:
    http://otn.oracle.com/sample_code/products/jdev/10g/ADFandStrutsValidator.zip - this has a data field check on it as well

  • Strut tile definition and bc4j

    Hi ,
    I am working on a BC4j Struts based project.I was on my way to implement tile definition thru a xml file and implementing do action forwards,for ex welcome.do,viewreport.do.For doing this I had to change the controller entry in struts-config.xml from
    <controller debug="3" locale="true" processorClass="oracle.jbo.html.struts11.BC4JRequestProcessor" contentType="text/html;charset=windows-1252"/>
    to
    <controller processorClass="org.apache.struts.tiles.TilesRequestProcessor" contentType="text/html;charset=windows-1252"/
    after I did this the actions I had implemented myself with to work with tile defs,they are working fine ,but there were some other actions(as I started with a wizard created bc4j strut app) which are bc4j related have stopped working because BC4JRequestProcessor was no more
    defined as the request processor....
    How to solve this?How to make both strut actions and bc4j actions work inside a project...can 2 request processors be used at the same time...
    can anybody help??

    check this weblog entry by Steve Muench
    http://radio.weblogs.com/0118231/2003/09/14.html
    success
    -Jan

  • Comparision btw Struts and JSTL tags

    Hi,
    Is there any article or helpful information that any body have come across that have good comparision between struts and JSTL tags? I am trying to find similar JSTL tags to my struts application.
    Any help in this regard is appreciated.
    Thanks,
    -jon

    You can't use JSTL to replace struts completely. The struts tags and the JSTL tags have some overlap in the logic, control flow and formatting bits, but there is a lot that struts does that JSTL doesn't (the input controls).
    Struts-el was a bridge between Struts and JSTL for JSP1.2 containers.
    It has a very limited use nowadays. Most applications should be being written in J2EE1.4 (Servlet 2.4/JSP2.0), and thus the requirement for the struts-el tags is not there - the container understands EL without special tags required.
    As I said before you should only use Struts-EL if
    - You are stuck with a J2EE1.3 (Servlet2.3/JSP1.2) container
    - You want to use EL with struts.
    For myself, I prefer using the EL expression like ${expr} rather than older <%= expr %>, but it comes down to personal preference.
    Cheers,
    evnafets

  • Struts and JSF

    I have an Action from Struts. This controls the data in the code behind bean.
    After I call submit, how do I go Back to the Struts actions? the JSF navagation does not allow navigating to a servlet.

    Hey Shay,
    We have quite a large application based entirely on Struts. There is a keen interest in migrating to JSF, but in an incremental fashion. I did a fair amount of googling and almost everything i came up with , was purely theory oriented, are there any resources online , which clearly give examples/tutorials for doing a step by step migration to JSF from Struts. Couple of other questions that i dont seem to find an answer to with regards to the Integration of struts and JSF
    1) I understand BC4J, struts and JSF can be integrated together, does the same hold for ADF ? there was a similar forum post back in 2005 , where they said this is yet to be done, do we have this integration with Jdev 10.1.3 ?
    2) If i were to use only the jsf UI component tags as a first step in my struts application , what is the equivalent for the page definition file of JSF in struts, as in how would i achieve the binding ?

  • 9i;JSP; BC4J Data Tags...

    Hi,
    What's different between these two tags in BC4J Data Tags pallet:
    <jbo:InputText> & <jbo:InputRender>

    Hello,
    Here is the difference (from the online documentation)
    <jbo: InputText> Inserts a text-input field form element into
    your page.
    JSP Syntax <jbo:InputText
    datasource="datasourceId" dataitem="attributename"
    [ cols=numberCharactersWide ]/>
    Examples
    Order Id:<jbo:InputText datasource="Orders" dataitem="Id" />
    Description The input render converts all values to a String for
    storage in the database.
    <jbo: InputRender>
    Inserts a input form element that allows user to edit data of
    all types, including complex object types.
    JSP Syntax
    <jbo:InputRender
    datasource="datasourceId"
    dataitem="attributename"/>
    Examples
    <form enctype="multipart/form-data"
    NAME="iForm" METHOD="POST"
    ACTION="Submit_AddImage.jsp" >
    Image Id:<jbo:InputRender datasource="ds1" dataitem="Id" />
    Image File:<jbo:InputRender datasource="ds1"
    dataitem="Image" /><input type="submit" /> </form>
    Description
    Input form uses a field render specific to the object type.
    Hope this helps. You can search on the online documentation for
    description about this and other components.
    Thanks,
    -Kishore
    JDev Team

  • HOW TO: Create a JSP Insert Record Form Using BC4J Data Tags

    This is a JDeveloper Tech Note found on the OTN Documentation page. This note describes the use of the BC4J data tags to create insert/submit JSP pages. Here is a link:
    http://technet.oracle.com/docs/products/jdev/technotes/datatag_input/Insert_Form.html

    You can loop throgh query records whit an implicit cursor (which automatically manages the open cursor, fetch and next record):
      for rec in (select intime,outtime,barcode,attend_date from dail_att; )
      loop
           t_in :=rec.intime;
           t_out :=rec.outtime;
           t_code :=rec.barcode;
           t_date := attend_date;
             PUT YOUR CODE HERE ... (if ..then... elsif... logic)
             you can avoid setting variables 'cause you can directly use the implicit cursor variables: rec.intime etc.
      end loop;
    END;Anyway, I suggest you to check the where condition of your block ... because if not all data are retrieved there should be a problem in your query ... so even the cursor (if based on very same query) will return less data than expected.
    Luca

  • C:forEach and logic:iterate tags repeating elements of a collection

    I have an issue that makes absolutely no sense to me. Basically I am using struts, and I am returning a form that contains a List of customers. I am simply trying to iterate that list into a simple table for each customer. The end result will have rows for each table, but I tried to simplify this example.
    The only filter is that I don't want to display customers that don't contain any data that I care to display. In my dataset, there is only one customer that has any data that I care about, and that has been verified in the database and in the backend action feeding the struts page.
    I first attempted this with the c:forEach JSTL tag. What I saw was that the customers were just getting repeated. Instead of showing one table for each customer, it was repeating the tables for each customer equal to the size of the Collection. For example, there were *5* customers in the List, only customer C should have been set into a table, but the table for customer C was being repeated *5* times. I went into the backend code, and made sure the object being sent back to struts contained the correct number of records.
    I then tried the same thing using the logic:iterate Struts EL tag. This did exactly the same thing. Instead of one table for customer C, I had 5 tables, all for customer C.
    Frustrated, I then went back to just writing a basic scriptlet in the JSP, to iterate over the object returned from the struts action. When I did this, everything came back as normal. Only customer C met my conditional statement, and only customer C had a table created in the generated HTML.
    Now I must be missing something with how the JSTL tags are handling the iteration, so I wanted to post the code to see if anyone had any idea what I am doing wrong here.
    The JSP page is found below. As you can see, the first part is done as a scriptlet, and the last part is done with JSTL tags. Unless I am mistaken, the 2 approaches should produce the same result. Please let me know if I am missing something here.
    <%@ include file="/common/customConfig.inc"%>
    <%@ page import="java.util.Iterator,
        com.pw.cemp.webapp.common.forms.CempDocumentsForm,
        com.pw.cemp.webapp.common.views.CustomerView"%>
    Write table with straight scriptlets...
    <br />
    <br />
    <%
        CempDocumentsForm cdForm =
            (CempDocumentsForm) session.getAttribute("cempDocsForm");
        Iterator itCustomers = cdForm.getCustomers().iterator();
        while (itCustomers.hasNext())
            int idx = 0;
            CustomerView customer = (CustomerView) itCustomers.next();
            if (customer.getCemps() != null && !customer.getCemps().isEmpty())
    %>
            <table>
                <% if (idx == 0) { %>
                    <caption>
                        Customer CEMP Listing
                    </caption>               
                <% } %>
                <tbody>
                    <tr>
                        <td class="level1">
                            <%=customer.getName() %> -
                            <%=customer.getSapCustomerId() %>
                        </td>
                    </tr>
                </tbody>
            </table>
    <%      
            idx ++;
    %>
    <br />
    <br />
    Now try using JSTL...
    <br />
    <br />
        <logic:iterate name="cempDocsForm" property="customers" id="customer" indexId="index">
        <!-- <c:forEach items="${cempDocsForm.customers}" var="customer" varStatus="status"> -->
            <c:if test="${not empty customer.cemps}">           
            <table>
                <c:if test="${index == 0}">
                    <caption>
                        Customer CEMP Listing
                    </caption>
                </c:if>
                <tbody>
                    <tr>
                        <td class="level1">
                            <c:out value="${customer.name}" /> -
                            <c:out value="${customer.sapCustomerId}" />
                        </td>
                    </tr>
                </tbody>
            </table>
            </c:if>
        <!-- </c:forEach> -->
        </logic:iterate>
        <br />
        <br />The code above produced the following HTML. As you can see, the scriptlet did exactly what I wanted, it produced 1 table for the only company that met the conditional statement. The JSTL section repeated the table for that one company, equal to the number of items in my List.
    Write table with straight scriptlets...
    <br />
    <br />
            <table>
                    <caption>
                        Customer CEMP Listing
                    </caption>                           
                <tbody>
                    <tr>
                        <td class="level1">
                            FMP Test Company -
                            5
                        </td>
                    </tr>
                </tbody>
            </table>
    <br />
    <br />
    Now try using JSTL...
    <br />
    <br />
            <table>           
                    <caption>
                        Customer CEMP Listing
                    </caption>           
                <tbody>
                    <tr>
                        <td class="level1">
                            FMP Test Company -
                            5
                        </td>
                    </tr>
                </tbody>       
            </table>
            <table>
                <tbody>
                    <tr>
                        <td class="level1">
                            FMP Test Company -
                            5
                        </td>
                    </tr>
                </tbody>
            </table>
            <table>           
                <tbody>
                    <tr>
                        <td class="level1">
                            FMP Test Company -
                            5
                        </td>
                    </tr>
                </tbody>
            </table>
            <table>           
                <tbody>
                    <tr>
                        <td class="level1">
                            FMP Test Company -
                            5
                        </td>
                    </tr>
                </tbody>
            </table>
            <table>       
                <tbody>
                    <tr>
                        <td class="level1">
                            FMP Test Company -
                            5
                        </td>
                    </tr>
                </tbody>
            </table>
        <br />
        <br />Thanks in advance...
    Edited by: cdbyrd on Feb 28, 2008 4:22 PM
    Edited by: cdbyrd on Feb 28, 2008 5:12 PM

    Okay, it looks like I kept moving things around until I stumbled upon something. One thing to note is that I am using Tiles in my struts 1.2.9 application. I don't know if that has anything to do with it, but this is what I found.
    If you notice in my code, with the iteration tags, I had one active and one commented version of the tag. I kept flipping them around, thinking it was some kind of syntax problem or it was specific to either the logic:iterate or c:forEach tag.
    Well, as it turns out, when you comment something the way I did, I think the custom tag processor doesn't ignore the commented sections. I had things commented like the following.
        <logic:iterate name="cempDocsForm" property="customers" id="customer" indexId="index">
        <!-- <c:forEach items="${cempDocsForm.customers}" var="customer" varStatus="status"> -->Now I have done this many times in the past, and I have never noticed any adverse behavior. I guess it was just the correct situation here to make the problem come to the surface. As soon as I removed any comments on the JSP, the page started working as expected. I can't explain why it happens, I just know it happened.
    Does anyone out there have a good explanation for this, so I can put a reason to why I lost so much hair today? Also, does anyone have the proper way to comment out JSTL tags to keep them from being parsed?
    Thanks...

  • Urgent Pls - Using BC4J Intermedia tags

    Hi,
    I am using BC4J Intermedia tag EmbedImage to display images stored in Databases. When I try to display I get only a blank picture equivalent to the size of the image and not the image itself. The type of the image is JPG. The Image datatype in the database is ORDSYS.ORDIMAGE.
    Is it to do something with the project settings? I am using Oracle 9.0.3 version of JDeveloper.
    Any help is appreciated.
    Thanks
    Priya

    Right, that's because the oracle.ord.html.URLBuilder class builds the URL for the images by using the current JSP directory level.
    For example: if your JSP page that uses <jbo:EmbedImage> is located under http://hostname.com/contextRoot/mydir/. Then the generated URL for the image will be http://hostname.com/contextRoot/mydir/ordDeliverMedia?....
    But in web.xml, the <url-pattern> element defines the url pattern value, which by default is "/ordDeliverMedia". So the media delivery servlet only handles the requests like these: http://hostname.com/contextRoot/ordDeliverMedia?...
    So, in order to make your sample work, you need to modify the web.xml in your project. There are two alternatives:
    1. Change the <url-pattern> element to this:
    <url-pattern>/kerfisumsjon/ordDeliverMedia</url-pattern>
    This will correctly handle the JSPs located under kerfisumsjon.
    Or
    2. Change the <url-pattern> element to this:
    <url-pattern>*ordDeliverMedia</url-pattern>
    This will handle any requests for ordDeliverMedia regardless of their directory location.
    Hope this solves your problem.
    Richard

  • Struts and ADF in Portal

    Hello. We have had a TAR going for some time regarding an issue with Struts and ADF in Portal. This is the summary of the TAR:
    Customer followed the following document to create his Struts ADF application:
    Developing an End-to-End Web Application Using the Default Technology Scope
    at
    http://www.oracle.com/technology/obe/obe9051jdev/ADFtoJSP/defaultendtoend.htm
    After following the steps in the documentation, his application worked just fine.
    - After this he decided to portletize his application using the following document:
    OracleAS Portal Developer Kit (PDK)
    How to create a Struts Portlet ?
    at
    http://portalstudio.oracle.com/pls/ops/docs/FOLDER/COMMUNITY/PDK/ARTICLES/pdkstruts/portletize-your-app.html
    When adding his portlet to a page, he basically received a portlet without any data, while the same worked fine outsi
    de of Portal.
    These are examples from the JSP file that do not show up in the portlet:
    <c:out value="${bindings.DepartmentsView1.labels['DepartmentId']}">
    <c:out value="${bindings.DepartmentId.label}"/>
    </c:out>
    We figured out that if we add the following filter mapping then it works fine:
    <filter-mapping>
    <filter-name>ADFBindingFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    This filter mapping would mean that it maps all URLs to the ADFBindingFilter. I suppose this would not be necessary and we're concerned about the implications this might cause and we believe that there should be a better solution for this.
    The final reply from support was that Portal is not yet supported with ADF technology. Does anyone have any comment on the above filter issue and other thoughts on using Struts and ADF in Portal? Another issue we found was that the PDK Struts tags do not support EL expressions. Have a look at this forum post:
    Re: Struts and nested tags in parameters. Possible?

    I am trying to create a portlet with JSF/ADF
    I Developed a Application with Oracle ADF UIX from: http://www.oracle.com/technology/obe/obe_as_1012/j2ee/develop/client/uix/lesson_uix.htm
    and then I followed this link: http://oracle001.cedecra.it/pdk/articles/pdkstruts/portletize-your-app.html
    to portletize the application
    and I am getting the below error message:
    500 Internal Server Error
    java.lang.SecurityException: sealing violation at com.evermind.naming.ContextClassLoader.defineClass(ContextClassLoader.java:1153) at com.evermind.naming.ContextClassLoader.defineClass(ContextClassLoader.java:1065) at com.evermind.naming.ContextClassLoader.findClass(ContextClassLoader.java:404) at com.evermind.naming.ContextClassLoader.loadLocalClassFirst(ContextClassLoader.java:158) at com.evermind.naming.ContextClassLoader.loadClass(ContextClassLoader.java) at java.lang.ClassLoader.loadClass(ClassLoader.java) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:539) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java) at com.evermind.util.OC4JSecureClassLoader.defineClassEntry(OC4JSecureClassLoader.java:172) at com.evermind.naming.ContextClassLoader.defineClass(ContextClassLoader.java:1179) at com.evermind.naming.ContextClassLoader.defineClass(ContextClassLoader.java:1065) at com.evermind.naming.ContextClassLoader.findClass(ContextClassLoader.java:404) at com.evermind.naming.ContextClassLoader.loadLocalClassFirst(ContextClassLoader.java:158) at com.evermind.naming.ContextClassLoader.loadClass(ContextClassLoader.java) at java.lang.ClassLoader.loadClass(ClassLoader.java) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:539) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java) at com.evermind.util.OC4JSecureClassLoader.defineClassEntry(OC4JSecureClassLoader.java:172) at com.evermind.naming.ContextClassLoader.defineClass(ContextClassLoader.java:1179) at com.evermind.naming.ContextClassLoader.defineClass(ContextClassLoader.java:1065) at com.evermind.naming.ContextClassLoader.findClass(ContextClassLoader.java:404) at com.evermind.naming.ContextClassLoader.loadLocalClassFirst(ContextClassLoader.java:158) at com.evermind.naming.ContextClassLoader.loadClass(ContextClassLoader.java) at java.lang.ClassLoader.loadClass(ClassLoader.java) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java) at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:1655) at java.lang.Class.getMethod0(Class.java:1901) at java.lang.Class.getMethod(Class.java:984) at oracle.portal.utils.xml.v2.DefaultNodeHandler.findMethod(Unknown Source) at oracle.portal.utils.xml.v2.DefaultNodeHandler.setCustomValue(Unknown Source) at oracle.portal.utils.xml.v2.DefaultNodeHandler.handleSimpleElement(Unknown Source) at oracle.portal.utils.xml.v2.DefaultNodeHandler.processNode(Unknown Source) at oracle.portal.utils.xml.v2.DefaultNodeHandler.processNode(Unknown Source) at oracle.portal.provider.v2.http.DefaultProviderLoader.getProviderDefinition(Unknown Source) at oracle.portal.provider.v2.http.DefaultProviderLoader.validate(Unknown Source) at oracle.webdb.provider.v2.adapter.soapV1.ProviderAdapter.validate(Unknown Source) at oracle.webdb.provider.v2.adapter.soapV1.ProviderAdapter.showTestPage(Unknown Source) at oracle.webdb.provider.v2.adapter.soapV1.ProviderAdapter.handleHttp(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java) at oracle.webdb.provider.v2.adapter.SOAPServlet.doHTTPCall(Unknown Source) at oracle.webdb.provider.v2.adapter.SOAPServlet.service(Unknown Source) 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.doFilter(Unknown Source) at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16) at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:239) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:669) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:340) 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)
    [b]provider.xml
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <?providerDefinition version="3.1"?>
    <provider class="oracle.portal.provider.v2.DefaultProviderDefinition">
    <session>true</session>
    <passAllUrlParams>true</passAllUrlParams>
    <preferenceStore class="oracle.portal.provider.v2.preference.FilePreferenceStore">
    <name>prefStore1</name>
    <useHashing>true</useHashing>
    </preferenceStore>
    <portlet class="oracle.portal.provider.v2.DefaultPortletDefinition">
    <id>1</id>
    <name>MyTest2Portlet</name>
    <title>My Test2 Portlet</title>
    <description>My Test2 Portlet Description</description>
    <timeout>40</timeout>
    <showEditToPublic>false</showEditToPublic>
    <hasAbout>false</hasAbout>
    <showEdit>true</showEdit>
    <hasHelp>false</hasHelp>
    <showEditDefault>false</showEditDefault>
    <showDetails>false</showDetails>
    <renderer class="oracle.portal.provider.v2.render.RenderManager">
    <renderContainer>true</renderContainer>
    <renderCustomize>true</renderCustomize>
    <autoRedirect>true</autoRedirect>
    <contentType>text/html</contentType>
    <showPage class="oracle.portal.provider.v2.render.http.StrutsRenderer">
    <defaultAction>/portal/browseDeptEmp.do</defaultAction>
    </showPage>
    <editPage>/htdocs/mytest2portlet/MyTest2PortletEditPage.jsp</editPage>
    </renderer>
    <personalizationManager class="oracle.portal.provider.v2.personalize.PrefStorePersonalizationManager">
    <dataClass>oracle.portal.provider.v2.personalize.NameValuePersonalizationObject</dataClass>
    </personalizationManager>
    </portlet>
    </provider>
    struts_config.xml
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
    <struts-config>
    <form-beans>
    <form-bean name="DataForm" type="oracle.adf.controller.struts.forms.BindingContainerActionForm"/>
    </form-beans>
    <action-mappings>
    <action path="/portal/browseDeptEmp" className="oracle.adf.controller.struts.actions.DataActionMapping" type="oracle.adf.controller.struts.actions.DataForwardAction" name="DataForm" parameter="/browseDeptEmp.uix">
    <set-property property="modelReference" value="browseDeptEmpUIModel"/>
    <forward name="formEmpLink" path="/portal/formEmp.do"/>
    <forward name="createEmpLink" path="/portal/createEmpAction.do"/>
    <forward name="searchEmpLink" path="/portal/searchEmp.do"/>
    </action>
    <action path="/portal/formEmp" className="oracle.adf.controller.struts.actions.DataActionMapping" type="oracle.adf.controller.struts.actions.DataForwardAction" name="DataForm" parameter="/formEmp.uix">
    <set-property property="modelReference" value="formEmpUIModel"/>
    </action>
    <action path="/portal/createEmpAction" className="oracle.adf.controller.struts.actions.DataActionMapping" type="oracle.adf.controller.struts.actions.DataAction" name="DataForm">
    <set-property property="modelReference" value="formEmpUIModel"/>
    <set-property property="methodName" value="formEmpUIModel.Create"/>
    <set-property property="resultLocation" value="${requestScope.methodResult}"/>
    <set-property property="numParams" value="0"/>
    <forward name="success" path="/portal/formEmp.do"/>
    </action>
    <action path="/portal/searchEmp" className="oracle.adf.controller.struts.actions.DataActionMapping" type="oracle.adf.controller.struts.actions.DataForwardAction" name="DataForm" parameter="/searchEmp.uix">
    <set-property property="modelReference" value="searchEmpUIModel"/>
    </action>
    </action-mappings>
    <message-resources parameter="view.ApplicationResources"/>
    </struts-config>
    web.xml
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <description>Empty web.xml file for Web Application</description>
    <context-param>
    <param-name>CpxFileName</param-name>
    <param-value>DataBindings</param-value>
    </context-param>
    <context-param>
    <param-name>oracle.portal.log.LogLevel</param-name>
    <param-value>4</param-value>
    </context-param>
    <filter>
    <filter-name>ADFBindingFilter</filter-name>
    <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>windows-1252</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>ADFBindingFilter</filter-name>
    <url-pattern>*.jsp</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>ADFBindingFilter</filter-name>
    <url-pattern>*.jspx</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>ADFBindingFilter</filter-name>
    <servlet-name>uix</servlet-name>
    </filter-mapping>
    <!-- <filter-mapping>
    <filter-name>ADFBindingFilter</filter-name>
    <servlet-name>action</servlet-name>
    </filter-mapping>
    -->
    <filter-mapping>
    <filter-name>ADFBindingFilter</filter-name>
    <servlet-name>SOAPServlet</servlet-name>
    </filter-mapping>
    <servlet>
    <servlet-name>SOAPServlet</servlet-name>
    <description>Extended Portal SOAP Server</description> <servlet-class>oracle.webdb.provider.v2.adapter.SOAPServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
    <param-name>config</param-name>
    <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>uix</servlet-name>
    <servlet-class>oracle.cabo.servlet.UIXServlet</servlet-class>
    <init-param>
    <param-name>oracle.cabo.servlet.pageBroker</param-name>
    <param-value>oracle.cabo.servlet.xml.UIXPageBroker</param-value>
    </init-param>
    <init-param>
    <param-name>oracle.cabo.servlet.UIXRequestListeners</param-name>
    <param-value>oracle.cabo.adf.rt.InitModelListener</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>SOAPServlet</servlet-name>
    <description>Extended Portal SOAP Server</description>
    <servlet-class>oracle.webdb.provider.v2.adapter.SOAPServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>uix</servlet-name>
    <url-pattern>*.uix</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>uix</servlet-name>
    <url-pattern>/uix/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>SOAPServlet</servlet-name>
    <url-pattern>/providers</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>SOAPServlet</servlet-name>
    <url-pattern>/providers/*</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>35</session-timeout>
    </session-config>
    <mime-mapping>
    <extension>html</extension>
    <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
    <extension>txt</extension>
    <mime-type>text/plain</mime-type>
    </mime-mapping>
    <welcome-file-list>
    <welcome-file>index.uix</welcome-file>
    </welcome-file-list>
    </web-app>
    someone please help me out.
    Thank you so much

  • Using Struts and JSTL together

    I have
    <html:form action="xy.do">
    <c:set var="name" value="shalik"/>
    <html:text property="name" value="<c:out value="${name}"/>"/>
    </html:form>
    How could I put data stored in ${name} to show in the text
    Also, is there a shorter way to access java variables using jstl core
    I would not want to do
    <input type="text" name="name" value="<c:out value="${name}"/>"/>
    which works, because I have to use struts

    No you can't include tags as attributes to other tags.
    Yes, you can definitely use the Struts and JSTL together.
    If you want to use EL expressions with the struts tags, it depends on your server.
    If you have a JSP2.0 container (eg Tomcat 5) its no problem at all. You can use the EL expressions directly with the standard struts tags.
    For a JSP1.2 container, there are specifically written struts-el tags. They let you use EL expressions instead of <%= %> expressions
    <c:set var="name" value="shalik"/>
    <html:text property="name" value="${name}"/>The struts-el tags only have a subset of the struts tags. It is intended for use with the JSTL. For instance the c:if tag easily replaces a lot of the logic conditional ones (equal, lessThan, etc etc)
    The tags are available as part of the standard struts download in the contrib directory.
    However for what you seem to be wanting to do, wouldn't it be more struts-like to have an action that specifically populates the action form, and just have
    <html:text property="name"/>
    The value would then be automagically populated from the form bean.
    Hope this helps,
    evnafets

  • Problem occurs when working with the struts and mYsql database

    Hi all,
    I am working on Struts and using database mysql. I am getting this error when i tries to modify the values of jsp page and after modify when i submit a page ,the values are modifying but it is showing this error.
    After modifying the values i am forwarding the controller to the Display page where all records from the databse will be displayed.Please tell me how to solve.this..
    Thanks
    javax.servlet.ServletException: Cannot find bean employees in any scope
         at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:495)
         at org.apache.jsp.viewEmployee_jsp._jspService(viewEmployee_jsp.java:208)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:162)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
         at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:627)
         at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:382)
         at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:306)
         at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
         at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:716)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
         at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
         at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
         at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
         at java.lang.Thread.run(Thread.java:534)
    root cause
    javax.servlet.jsp.JspException: Cannot find bean employees in any scope
         at org.apache.struts.util.RequestUtils.lookup(RequestUtils.java:938)
         at org.apache.struts.taglib.logic.IterateTag.doStartTag(IterateTag.java:277)
         at org.apache.jsp.viewEmployee_jsp._jspService(viewEmployee_jsp.java:124)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:162)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
         at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:627)
         at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:382)
         at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:306)
         at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
         at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:716)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
         at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
         at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
         at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
         at java.lang.Thread.run(Thread.java:534)
    Apache Tomcat/4.1.31

    Hi,
    i think you have got this sample application from Mastering Jakarta Struts book.
    Try the following changes, you can escape from this exception:
    1) In the employeelist.jsp, change the name attribute to "USER instead of "employees" as follows
    <logic:iterate id="employee" name="USER">
    and also <logic:present name="USER"> </logic:present> before and after the iterate tags.
    2)In the EmployeeList Action.java,add the following in the excute method...
              EmployeesActionMapping employeesMapping =
                   (EmployeesActionMapping)mapping;
                   if ( employeesMapping.isLoginRequired() ) {
                        HttpSession session = request.getSession();
                             if ( session.getAttribute("USER") == null ) {
                                  System.out.println("session.getAttribute is NULL");
                                  target = "login";
                             ActionErrors errors = new ActionErrors();
                             errors.add(ActionErrors.GLOBAL_ERROR,
                             new ActionError("errors.login.required"));
                             if (!errors.empty()) {
                             saveErrors(request, errors);
                        }else{
                   session.setAttribute("USER",getEmployees());
    Thanks,
    Shanmu

  • Creating rows Using BC4J Data Tags

    Hi!
    I want to create rows using BC4J data tags.
    I have 2 jsp pages: one containig forms and one to insert data.
    Is it possible to insert new rows into 2 or more tables?
    How can I differ the attributes to one table and to another?
    How can I do this?
    Thanks!

    The path is:
    Select "File/New" in the menu.
    Select "BC4J JSP" in the gallery.
    Select "Browse & Edit Form" wizard.
    This is in JDeveloper 9.0.2.
    Charles.

  • Struts with BC4J on JDeveloper903

    We are developing a project using Struts with BC4J on JDeveloper903.
    I understand every JSP Page needs a related Action class & Form bean. It makes sense to create a Form bean if you are doing any transactions like Add or Update b'cos you want to retain the state but for browse i don't have to retain the state. So i am planning only Action class for each JSP Page.
    Does this approach have any disadvantage(s) ?
    In other words,
    Do i need to Create a Form bean for simple browse pages, we have so many browse pages ?
    Thanks in advance.

    A form bean represents the logical notion of an input form (which may extend across several web pages and server requests). If you don't have to worry about receiving user input from a form, you don't need a form bean. It's perfectly fine to have action mappings and action classes that never involve a form bean.

Maybe you are looking for

  • Help! Using multiple ipods on same account - for education

    Hi, I'm a primary school teacher and have just purchased 5 ipods to use with Year 2 students in the classroom. Is there any way of syncing the songs and/or short movies to all 5 ipods? I don't mind paying for these things once but not 5 times each ti

  • Error message & I can't open iTunes even after re-installing the disc!

    When i try to open itunes the following message appears..."iTunes cannot run because some of its required files are missing. Please reinstall iTunes." Im not sure if the fact i accidently removed Quicktime (not realising its importance) may have affe

  • Issue with DataAccessObject pattern

    I am using the patterns described in Core J2EE(TM) Patterns: DataAccessObject pattern ref : http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html Using a DAO and DAO Factory - Client Code DAOFactory cloudscapeFactory = DAOFac

  • Coherence not update database

    Hi I'm new in Coherence and I have a doubt about the synchronization between Coherence+JPA and the database. I have created a data model with JPA Entities which has an entity Role with their privileges Map. Privileges Map is <String><PrivilegeList> a

  • Can I publish to a desktop folder in iWeb 9?

    Trying to sett up a website via Machighway. There is aknown bug that lets you connect to the server but can't publish the site because the publish button in iWeb is grayed out. How can I get around this? Please and thank you.