ADF Faces, BC and JDeveloper 10g: Rendering Dynamic ViewObjects at runtime

I am trying to make a 10g version of Shay's example (http://www.youtube.com/watch?v=TwIKt7e4vEw).
JSP code:
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"+
+"http://www.w3.org/TR/html4/loose.dtd">+
+<%@ page contentType="text/html;charset=windows-1252"%>+
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>+
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>+
+<%@ taglib uri="http://xmlns.oracle.com/adf/faces/html" prefix="afh"%>+
+<%@ taglib uri="http://xmlns.oracle.com/adf/faces" prefix="af"%>+
+<f:view>+
+<afh:html>+
+<afh:head title="runTest">+
+<meta http-equiv="Content-Type"+
content="text/html; charset=windows-1252"/>
+</afh:head>+
+<afh:body>+
+<af:messages/>+
+<af:form>+
+<af:table value="#{bindings.DynamicVo.collectionModel}" var="row"+
+rows="#{bindings.DynamicVo.rangeSize}"+
+first="#{bindings.DynamicVo.rangeStart}"+
+emptyText="#{bindings.DynamicVo.viewable ? \'No rows yet.\' : \'Access Denied.\'}"+
+partialTriggers="make">+
+<af:column sortProperty="Dummy" sortable="false"+
+headerText="#{bindings.DynamicVo.labels.Dummy}">+
+<af:outputText value="#{row.Dummy}"/>+
+</af:column>+
+</af:table>+
+<af:commandButton actionListener="#{bindings.makeVo.execute}"+
+text="makeVo" disabled="#{!bindings.makeVo.enabled}"+
+id="make"/>+
+</af:form>+
+</afh:body>+
+</afh:html>+
+</f:view>+
*PageDef:*
+<?xml version="1.0" encoding="UTF-8" ?>+
+<pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel"+
+version="10.1.3.42.70" id="runTestPageDef"+
+Package="view.pageDefs">+
+<parameters/>+
+<executables>+
+<iterator id="DynamicVoIterator" RangeSize="10" Binds="DynamicVo"+
+DataControl="AppModuleDataControl"/>+
+</executables>+
+<bindings>+
+<table id="DynamicVo" IterBinding="DynamicVoIterator">+
+<AttrNames>+
+<Item Value="Dummy"/>+
+</AttrNames>+
+</table>+
+<methodAction id="makeVo" InstanceName="AppModuleDataControl.dataProvider"+
+DataControl="AppModuleDataControl" MethodName="makeVo"+
+RequiresUpdateModel="true" Action="999"+
+IsViewObjectMethod="false"/>+
+</bindings>+
+</pageDefinition>+
*Application Module Implementation:*
+package model;+
+import model.common.AppModule;+
+import oracle.jbo.ViewObject;+
+import oracle.jbo.server.ApplicationModuleImpl;+
+// ---------------------------------------------------------------------+
+// --- File generated by Oracle ADF Business Components Design Time.+
+// --- Custom code may be added to this class.+
+// --- Warning: Do not modify method signatures of generated methods.+
+// ---------------------------------------------------------------------+
+public class AppModuleImpl extends ApplicationModuleImpl implements AppModule {+
+/**This is the default constructor (do not remove)+
+*/+
+public AppModuleImpl() {+
+}+
+public void makeVo(){+
+System.out.println("make vo");+
+ViewObject vo = this.findViewObject("DynamicVO");+
+if(vo==null){+
+System.out.println("vo is null");+
+}+
+vo.remove();+
+System.out.println("Vo removed");+
+vo = createViewObjectFromQueryStmt("DynamicVo", "SELECT deptno from dept" );+
+System.out.println("Vo created");+
+vo.executeQuery();+
+System.out.println("Vo estimated row count"+vo.getEstimatedRowCount());+
+}+
+/**Container's getter for DynamicVo+
+*/+
+public DynamicVoImpl getDynamicVo() {+
+return (DynamicVoImpl)findViewObject("DynamicVo");+
+}+
+/**Sample main for debugging Business Components code using the tester.+
+*/+
+public static void main(String[] args) {+
+launchTester("model", /* package name */+
+"AppModuleLocal" /* Configuration Name */);+
+}+
+}+
*Runtime before clicking button*
http://i108.photobucket.com/albums/n23/zeoneozero/1.jpg
*Runtime after clicking button*
http://i108.photobucket.com/albums/n23/zeoneozero/2.jpg
*Console*
+1/11/09 11:26:44 make vo+
+11/11/09 11:26:44 Vo removed+
+11/11/09 11:26:44 Vo created+
+11/11/09 11:26:44 Vo estimated row count7+
*Error:*
JBO-25003: Object DynamicVo of type View Object not found
JBO-25003: Object DynamicVo of type View Object not found
Will this work with 10g? If so, has anyone tried and succeeded? Any advice is appreciated.
thanks,
wes

the example is in 11g and makes use adf dynamic forms.
I don´t know if you can make this in 10g

Similar Messages

  • Adf faces jar  for jdeveloper 10g

    Hi,
    i m using jdeveloper 10, i want to use adf (af componant) in my jsf page, so i need adf jar, but i m not able to download them from
    "How To Use ADF Faces With JDeveloper 10g" kindly help me how i can download these jar, so that i can use them in my code

    Trinidad is a JavaServer Faces component library that is a subproject of Apache MyFaces. (It was formerly known as ADF Faces.)
    Refer http://wiki.apache.org/myfaces/from_ADF_to_Trinidad

  • Adf-faces-demo.war for 10g - where can I download this demo package?

    based on Oracle JDeveloper 10g (10.1.3) Documentation this package can be downloaded, but it's not there any more. Anyone know where I can download a copy?
    About the ADF Faces Demo Files The ADF Faces component and feature demonstration files are available in adf-faces-demo.war, which you can download from the Oracle Technology Network at
    http://www.oracle.com/technology/tech/java/jsf.html
    or,
    http://www.oracle.com/technology/products/jdev/htdocs/partners/addins/exchange/jsf/index.html
    Thanks

    The 10.1.3 version of the file is now linked from
    http://www.oracle.com/technetwork/testcontent/adffaces1013-096465.html
    (under the download section of that page)

  • Problem in implements ADF Faces: Detecting and handling user session expiry

    Hello everybody
    I´m trying to implement a method to handle user session expiry as explained by frank nimphius in his blog.
    http://thepeninsulasedge.com/frank_nimphius/2007/08/22/adf-faces-detecting-and-handling-user-session-expiry/
    I have implemented the class bellow and add the filters in web.xml. However when I add the JavaServer Faces Servlet to sign the filter, my hole application get nuts. I try to publish the applicatoin in the OAS and it seems that it already starts expired.
    Someone konw what I´m doing wrong?
    I use the filter
    <filter>
    <filter-name>ApplicationSessionExpiryFilter</filter-name>
    <filter-class>adf.sample.ApplicationSessionExpiryFilter</filter-class>
    <init-param>
    <param-name>SessionTimeoutRedirect</param-name>
    <param-value>SessionExpired.jspx</param-value>
    </init-param>
    </filter>
    then I add
    XML:
    <filter-mapping>
    <filter-name>ApplicationSessionExpiryFilter</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    </filter-mapping>
    package adf.sample;
    import java.io.IOException;
    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    this is the class
    public class ApplicationSessionExpiryFilter implements Filter {
    private FilterConfig _filterConfig = null;
    public void init(FilterConfig filterConfig) throws ServletException {
    _filterConfig = filterConfig;
    public void destroy() {
    _filterConfig = null;
    public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain chain) throws IOException, ServletException {
    String requestedSession = ((HttpServletRequest)request).getRequestedSessionId();
    String currentWebSession = ((HttpServletRequest)request).getSession().getId();
    boolean sessionOk = currentWebSession.equalsIgnoreCase(requestedSession);
    // if the requested session is null then this is the first application
    // request and "false" is acceptable
    if (!sessionOk && requestedSession != null){
    // the session has expired or renewed. Redirect request
    ((HttpServletResponse) response).sendRedirect(_filterConfig.getInitParameter("SessionTimeoutRedirect"));
    else{
    chain.doFilter(request, response);
    I'm really having trouble controlling user sessions. if someone know where I can get materials to learn how to implements session in Jdev ADF + BC, I´m very grateful.
    Thank you Marnie

    The class works fine.. the issue is when I add the this code into web.xml
    <filter-mapping>
    <filter-name>ApplicationSessionExpiryFilter</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    </filter-mapping>
    bellow the web.xml
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <web-app>
    <description>Empty web.xml file for Web Application</description>
    <context-param>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>client</param-value>
    </context-param>
    <context-param>
    <param-name>CpxFileName</param-name>
    <param-value>userinterface.DataBindings</param-value>
    </context-param>
    <filter>
    <filter-name>ApplicationSessionExpiryFilter</filter-name>
    <filter-class>view.managedBean.ApplicationSessionExpiryFilter</filter-class>
    </filter>
    <filter>
    <filter-name>adfFaces</filter-name>
    <filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
    </filter>
    <filter>
    <filter-name>adfBindings</filter-name>
    <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>ApplicationSessionExpiryFilter</filter-name> ==> the problem occurs when I try to add this code
    <servlet-name>Faces Servlet</servlet-name>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfFaces</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <url-pattern>*.jsp</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <url-pattern>*.jspx</url-pattern>
    </filter-mapping>
    <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>resources</servlet-name>
    <servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resources</servlet-name>
    <url-pattern>/adf/*</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>1</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/pain</mime-type>
    </mime-mapping>
    </web-app>
    By the way, how can I post code on the forum properly?

  • Adf faces table and applet in jsf page navSubmit not working in IE

    Hi
    I have a jsf page with adf faces table and applet , previous / next navigation is not working for my table when i add the applet to the same page , it is working in firefox but not in IE .
    I have no clue what to change , can any one help. below is the sample code for my jsf page
    Best regards
    Srinivas
    Code follows, not sure how to format the code here
    <h:form>
    <af:panelPage title="Test Adf faces table and applet">
    <af:panelHeader text="Orders">
    <af:table value="#{bindings.Orders.collectionModel}" var="row"
    rows="#{bindings.Orders.rangeSize}"
    first="#{bindings.Orders.rangeStart}"
    emptyText="#{bindings.Orders.viewable ? 'No rows yet.' : 'Access Denied.'}"
    id="orders" >
    <af:column sortProperty="order"
    headerText="#{bindings.Orders.labels.order}">
    <af:commandLink text="#{row.order}"
    id="orderNumber"
    onclick="showOrder(#{row.order})"
    disabled="false"/>
    </af:column>
                   </af:table>
    </af:panelHeader>
    <af:objectSpacer width="10" height="10"/>
    <af:panelBox>
    <f:verbatim>
    <div id="appletDiv">
                        <applet here />
                        </div>
    </f:verbatim>
    </af:panelBox>
    </af:panelHorizontal>
    </af:panelPage>
    </h:form>

    Sorry about the format, it looked okay when i previewed it , now it looks like terrible

  • How do I add ADF Faces Core and ADF Faces Html to the component palette?

    I have an already made jspx page which I wish to work further on but I can´t choose ADF components from the component palette.
    in my older version I added these two lines to the <jsp:root> element when I wanted to make ADF components available.
    xmlns:af="http://xmlns.oracle.com/adf/faces"
    xmlns:afh="http://xmlns.oracle.com/adf/faces/html"
    but in Jdeveloper 11g preview 3 these two lines seem to have no effect.
    I tried to see what other jspx pages that contained ADF components in 11g had that my page didn´t and found out that they had the line
    xmlns:af="http://xmlns.oracle.com/adf/faces/rich"
    but when I add this line instead of the other two lines and press install JSP tag library Jdeveloper freezes completely. Can anyone help me get ADF components show up in the component palette in Jdeveloper 11g preview 3?
    Message was edited by:
    AtlanticViking

    Hello,
    Jdeveloper 11g uses Trinidad not ADF Faces 10g, to add it, uses the following:
    1. Double-click your project to access project properties;
    2. Select JSP Tag Libraries;
    3. Click Add;
    4. Trinidad Component 11-m3
    Regards,
    ~ Simon

  • JSP ADF Tree Binding in JDeveloper 10g

    I am attempting to create a JSP hierarchical tree structure in JDeveloper 10g. I can successfully create the tree structure for two levels only. I need to be able to create a tree 5 or more levels deep. I have created an ADF Master Detail structure using the sample OE schema for three levels and to the best of my knowledge, I have set up the rules correctly using the Tree Binding Editor accessed by a creating a new binding under Create Binding > Input > Tree for the UIModel of the test web application I created. However, in the JSP page, I can only access the first two levels. The code I'm using is as follows:
    <c:forEach var="masterRow" items="${bindings.CustomerOrdersTree.rootNodeBinding.children}">
    <c:out value="${masterRow.CustomerId}"/> -
    <c:out value="${masterRow.CustFirstName}"/>
    <c:out value="${masterRow.CustLastName}"/><br>
    <c:forEach var="ordersChildRow" items="${masterRow.children}">
    <c:out value="${ordersChildRow.OrderId}"/><br>
    <c:forEach var="Row2" items="${ordersChildRow.children}">
    </c:forEach>
    </c:forEach>
    </c:forEach>
    The first two levels display fine, but the third level is not displaying. What syntax should I be using to traverse further levels of the tree binding? Is it even possible? Thanks.
    Note: I didn't connect any event handlers for collapsing or expanding data. I'm just trying to display everything right now.

    I have the nodeExpanded attribute on the second level, set up exactly as the first level. I have a toggleSelection method on the second level (View Object) as well. I've stepped through this method and the arguments are passed correctly and the transient attribute is updated correctly. I'm calling this method through a second DataAction like treeHandler, and this works as far as calling the correct method with the correct argument values.
    The breakdown occurs back on the JSP. Even though the transient attibute gets populated accurately according to the toggleSelection method, when accessing that attribute on the JSP, it returns a null value. I can access all the other attributes from the same View Object, except for the transient attribute. I'm not sure what else to try.
    I'm starting to doubt this is even the best solution for a tree structure. With the way Oracle's example is set up, you would have to nest so many if-then structures in order to keep track of all the nodeExpanded attributes and which data to display or not, and I anticipate view state issues and caching problems.

  • JBO-35007 in Portletized ADF Faces Page and alternative scenarios

    Hi all,
    I've started a new thread to address one of the problems referred to here Issues with Faces -> Portlet Bridge and ADF Faces
    In short, the issue arises when portletizing an existing ADF Faces page that uses an ADF BC bound af:Table on the page. I've got a very simple ADF Faces page that has an af:Table on it bound to the employees table in the Oracle HR schema. The af:Table allows sorting and has an af:selectTableOne in it's selection facet which contains an af:commandButton. The app works fine when run as a JSF page.
    However, when I use the JSF-Portlet bridge to publish the page as a portlet (following all of the steps in the Web Center Developer's guide, including changing the state_saving_method to "server"), and placing the portlet on a ADF Faces page in a different project, I can consistently create JBO-35007 errors by:
    * Sorting the data in the portlet by clicking the column header
    * Selecting a different row and pressing the af:commandButton
    Clearly, the current row of the iterator is not being saved properly. I can (of course) "fix" this behavior by setting EnableTokenValidation to "false" in the page definition of the ADF Faces page that has been portletized, but this has obvious side effects.
    Should this behavior work as I am trying to implement it? Perhaps it doesn't make sense to "select" an item in a portlet like this (what am I going to do, as the parent application doesn't have access to the selected row information).
    I can, however, think of a good use case:
    User is using a web-store type application to browse items and add them to his shopping cart. Off to the side, we've got a portlet that shows recently purchased items for the user. User clicks item in that portlet (or selects and hits submit - as in my non-working example, above) and then the main web store application navigates to that item in the "main" section. How could I implement something like this? Any navigation case in the portlet is not exposed to the main application. Perhaps there is a different model by which to do this.... I cannot use a PDK event-type approach (this limits my use of Faces to create portlets), so I'm in a bind.
    Thoughts and discussion much appreciated,
    John

    Peter,
    This should be so simple to re-create; here's my project: http://download.yousendit.com/F017E4D457FFA7F3
    It uses the HR sample schema from a stock 10gr2 database. Be sure to set up the ADF BC connection in the model project, build and deploy the portlets, then try running TestPage.jspx in the UserInterface project. You can play around with the pagedef in the Portlet project to see the JBO-35007 error - right now, EnableTokenValidation is set to false - you can change it to true to see the error.
    John

  • ADF FACES: processValidators and ValidatorException bug

    Using EA15.
    Unless I'm misunderstanding how UIComponent.processValidators works, you should just throw a ValidatorException to signal a problem.
    However, in trying just that, the ADF FACES framework is treating the exception as a SEVERE error instead of treating it as a validation failure.
    I have constructed a simple extension to PanelPage so I can invoke my own validation routine, like this:
    * Internal class to provide a validation hook for our forms
    public static class ValidatingCorePanelPage extends CorePanelPage {
    public void processValidators(FacesContext ctx) {
    super.processValidators(ctx);
    // Dispatch the validation to the current form
    FormBean.dispatchFormValidation(ctx);
    dispatchFormValidation will invoke a validation method on the proper backing bean, in which code similar to the following is used:
    String spokeWith = (String)getCompSpokeWith().getLocalValue();
    String callStatus = (String)getCompFinalCallStatus().getLocalValue();
    System.out.println("SPOKEWITH='" + spokeWith + "'");
    System.out.println("CALLSTATUS='" + callStatus + "'");
    // We require a value in "spoke with" if the call status is anything other than
    // "left message"
    boolean isMessageStatus = !StringUtils.isEmpty(callStatus) && StringUtils.contains(callStatus.toLowerCase(),"message");
    if( !isMessageStatus && StringUtils.isEmpty(spokeWith)) {
    // register the error message
    FacesMessage fmsg =
    new FacesMessage(FacesMessage.SEVERITY_ERROR, "Incomplete Data",
    "'Spoke with' may not be empty");
    // Add the message to the specific
    // component that is missing data.
    getFacesContext().addMessage("spokewith", fmsg);
    throw new ValidatorException(fmsg);
    However, when this executes (and results in a ValidatorException), I get the following output in my log file:
    05/05/20 15:51:44 <<<< PHASE: RESTORE_VIEW 1
    05/05/20 15:51:44 >>>> PHASE: APPLY_REQUEST_VALUES 2
    05/05/20 15:51:44 <<<< PHASE: APPLY_REQUEST_VALUES 2
    05/05/20 15:51:44 >>>> PHASE: PROCESS_VALIDATIONS 3
    May 20, 2005 3:51:44 PM com.sun.faces.lifecycle.ProcessValidationsPhase execute
    SEVERE: Incomplete Data
    javax.faces.validator.ValidatorException: Incomplete Data
         at com.fhm.mwb.ui.backing.OfficeCallForm.validateForm(OfficeCallForm.java:256)
         at com.fhm.mwb.ui.backing.FormBean.dispatchFormValidation(FormBean.java:588)
         at com.fhm.mwb.ui.SharedComponents$ValidatingCorePanelPage.processValidators(SharedComponents.java:337)
         at oracle.adf.view.faces.component.UIXComponentBase.processValidators(UIXComponentBase.java)
    And the lifecycle stops dead!
    How is this supposed to work? How are you supposed to report a validation exception from within processValidators?
    This seems to be a bug in ADF FACES.

    <af:forEach> does not support <f:> or <h:> tags; this unfortunate restriction is documented in the <af:forEach> release notes. It's not a bug - it's a fact of life until we can get our technique integrated into the core JSF or JSP specifications.

  • ADF-Faces table and mass data

    Hello Oracle,
    we consider to use ADF-Faces with Spring and TopLink or Hibernate that supports all important commercial databases.
    We need a solution for selecting mass data and show them using a ADF-Faces component.
    ADF-Faces table looks great and is fine for for some hundred datasets. But we have customers who could do a select over 80.000 or more datasets and it cannot be the solution to load them completly in collection-model in memory.
    Do you have a solution or do you plan somthing? A JSF data table component for mass data (e.g. load from database on every "next or "previous" click)?
    Regards
    Florian

    I'm pretty new to ADF Faces etc. but I know the ADF Table component supports paging. If you're using ADF Business Components as the persistence framework it supports paging out of the box giving you exactly what you're looking for.
    If you're using EJBs or Toplink I think you have to write your own paging interface but I don't know this for sure.
    Corey
    Message was edited by:
    cpuffalt
    Message was edited by:
    cpuffalt

  • ADF FACES showOneTabs and selectOrderShuttle can't cowork

    I'm new to ADF FACES. My ADF FACES is EA10.
    The code excerpt from EA10's demo works fine when:
    <?xml version="1.0" encoding="iso-8859-1" standalone="yes" ?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="1.2"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:afh="http://xmlns.oracle.com/adf/faces/EA10/html"
    xmlns:af="http://xmlns.oracle.com/adf/faces/EA10" >
    <jsp:directive.page contentType="text/html;charset=iso-8859-1"/>
    <f:view>
    <afh:html>
    <afh:head title="SelectOrderShuttle Demo"/>
    <afh:body>
    <af:form>
    <af:selectOrderShuttle id="shuttle2"
    leadingHeader="Available values:"
    trailingHeader="Selected values:"
    valueChangeListener="#{list.valueChanged}"
    value="#{list.objectList}">
    <af:selectItem label="First" value="foo"/>
    <af:selectItem label="Second" value="bar"/>
    <af:selectItem label="Third" value="baz"/>
    </af:selectOrderShuttle>
    </af:form>
    </afh:body>
    </afh:html>
    </f:view>
    </jsp:root>
    But not working when:
    <?xml version="1.0" encoding="iso-8859-1" standalone="yes" ?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="1.2"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:afh="http://xmlns.oracle.com/adf/faces/EA10/html"
    xmlns:af="http://xmlns.oracle.com/adf/faces/EA10" >
    <jsp:directive.page contentType="text/html;charset=iso-8859-1"/>
    <f:view>
    <afh:html>
    <afh:head title="SelectOrderShuttle Demo"/>
    <afh:body>
    <af:form>
    <af:showOneTabs>
    <af:showDetailItem text="Text">
    <af:selectOrderShuttle id="shuttle2"
    leadingHeader="Available values:"
    trailingHeader="Selected values:"
    valueChangeListener="#{list.valueChanged}"
    value="#{list.objectList}">
    <af:selectItem label="First" value="foo"/>
    <af:selectItem label="Second" value="bar"/>
    <af:selectItem label="Third" value="baz"/>
    </af:selectOrderShuttle>
    </af:showDetailItem>
    </af:showOneTabs>
    </af:form>
    </afh:body>
    </afh:html>
    </f:view>
    </jsp:root>
    Could someone help?

    The bug is in showOneTabs, selectOrderShuttle or both?
    And when will EA12 be release?
    Thanks in advance.

  • ADF Faces: PPR and Dialog framework

    Hi All,
    I know that there have been some navigation-related issues reported with 10.1.3 and the dialog framework, so if this is a bug.....
    Anyway, I have an ADF Faces page that displays some data (from ADF View Object) in an af:Table. I have an "Edit Record" button and a "Create Record" button in the appropriate facets of the table. The 2 buttons use a dialog: navigation case (useWindow=true) to open a pop-up window with a record displayed for editing. Each of the buttons also has partialSubmit=true with an appropriate ID set on the button.
    Now, I am trying to get the table to refresh upon return from the dialog. After much experimentation, I have found that setting the partialTriggers property on the af:OutputText components that are inside the af:Table->af:Column will cause an existing row to refresh upon return from the edit button. However, I cannot get a new row to show up inside of the table upon return from the create button. I have tried setting partial triggers on the af:OutputText, af:Column, af:Table, etc all the way up to the top-level af:Page to no avail. I have also tried refreshing the iterator binding in the dialog return, to no avail. If I completely refresh the page (see sample code below), the record does show up, but it does cause other undesirable side effects (screen scrolls to the top, af:showDetailHeader's re-set their state, etc).
    Any pointers are appreciated...
    Here is the code behind my create button:
      public String performCreateCheck()
        DCBindingContainer bindings = getBindings();
        OperationBinding operationBinding = bindings.getOperationBinding("CreateNewCheck");
        Object result = operationBinding.execute();
        // Stuff snipped - the CreateNewCheck binding does a "CreateInsert" on my VO
        return "dialog:EditCheck";
      }Here is the code that refreshes the page (causes the new row to appear):
      protected void refreshCurrentPage()
        FacesContext context = FacesContext.getCurrentInstance();
        String currentView = context.getViewRoot().getViewId();
        ViewHandler vh = context.getApplication().getViewHandler();
        UIViewRoot x = vh.createView(context, currentView);
        x.setViewId(currentView);
        context.setViewRoot(x);
      }Kind regards,
    John

    Found this: http://radio.weblogs.com/0118231/stories/2004/09/23/notYetDocumentedAdfSampleApplications.html#81
    on Steve M's blog. His example uses exactly the same method that I do. However, It would be nice to get this working "properly" with PPR instead of refreshing the whole page. Here are what I see as the drawbacks to the "refresh the whole page" method:
    1). The page will scroll up to the top. If the page is bigger than a screenful, this is an annoyance.
    2). Any af:showDetailHeader's will have their disclosed property reset (unless you implement some method of saving their state). This is an issue for me, as the af:Table is inside of a normally un-disclosed af:showDetailHeader
    3). If any component anywhere puts something into the faces messages (e.g. "Record saved"), it will be lost when the page is refreshed.
    Any ideas on how to get this working with PPR?
    Regards,
    John

  • ADF Faces Components and HTML/JSP Pages

    We would like to create HTML/JSP pages and include some of the ADF Faces Components; ie: date picker, radio buttons, etc.
    When we develop this type of page, upon running in the embedded OC4J, the HTML is processed first and then the ADF Faces Components are processed. In the design panel/editor, everything is in the correct sequence. Upon running in the OC4J, it doesn't matter where in the code we place the ADF Faces Components, these ADF Faces Components always appear at the end of the other HTML and JSF Faces components in the displayed page.
    How can we mix the two technologies? ADF Faces alone is not flexible enough for our needs. We want to use the JSP:include tag for reusable code which works fine in a HTML/JSP page, but not in a ADF Faces PanelPage or PanelBorder or anything similar.
    We're running the EA17 version of the tag library.
    Can we mix the technologies? What are we missing? Is this an issue with the embedded OC4J? Will it make a difference if we develop JSP pages as pure JSP or the JSPX option?
    Thank you.
    Message was edited by:
    [email protected]

    The following tag lib allowed me to mix HTML and JSF tags (not sure about other JSP tags though). Hope this helps:
    http://jsftutorials.net/htmLib/
    Chris

  • JMS Resource Adapter and JDeveloper 10g

    Hello,
    I an trying to use the OC4J JMS Resource Adapter for WebSphere MQ with Jdeveloper 10g (OC4J 9.0.4). The program is just a servlet that sends a message to a JMS Queue. My orion-web.xml looks like:
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <!DOCTYPE orion-web-app PUBLIC "-//Evermind//DTD Orion Web Application 2.3//EN" "http://xmlns.oracle.com/ias/dtds/orion-web.dtd">
    <orion-web-app servlet-webdir="/servlet/">
    <resource-ref-mapping name="jms/QCF" location="mqjms/MyQCF" />
    <resource-env-ref-mapping name="jms/QUEUE1" location="mqjms/MyQ" />
    </orion-web-app>
    The problem is that when I try to start the server I get the following Jdeveloper error:
    java.lang.IllegalArgumentException: Unrecognized parent-elem combination: interface oracle.jdeveloper.xml.oc4j.war.OrionWebApp - resource-env-ref-mapping
         at oracle.javatools.xml.bind.XMLBinding.throwUnrecognizedElem(XMLBinding.java:127)
         at oracle.jdeveloper.xml.j2ee.war.WebAppBinding.elem2intImpl(WebAppBinding.java:637)
         at oracle.javatools.xml.bind.XMLBinding.elem2int(XMLBinding.java:104)….
    Any ideas?
    Thanks in advance

    Did you find a fix for this? I'm experiencing the same problem.

  • ADF Faces - Table update not completely rendered

    Hi,
    [ myfaces 1.1.3 + ADF version 10.1.3.0.4 ]
    I have a problem with Table component, changing a value of the inputText components will not update the output component also inside the table. At least not rendered to HTML, the view-tree contains the updated values. Below I have added a part of the jsp-code + a part of the view-tree of the log.
    Changing the value of the inputText with id="salesInput" should trigger an update to the otherSales value in the footer facet in the same column, but it isn't (in the browser).
    So I added multiple outputText components on different places in the table to find out if they were updated. I have also added an inputText component with id="test" outside of the table component, this one is properly updating all the otherSales values.
    If I change the values on the inputText component with id="salesInput" only the outputText with "salesOutput2" is updated in the browser, the one in the footer facet still contains the previous value. (only a browser refresh is fetching the correct values).
    What's the problem why it's not rendered to HTML, tree-view contains right values. Can I force the rendering ?
    Did I miss properties, attributes ?
    Any ideas...
    Your Help is really appreciated.
    Thanks,
    Bas van Oudenaarde
    part of the jsp:
    <af:table id="data" value="#{myManagedBean.allGeographicalData}"
    var="row" partialTriggers="salesInput test" varStatus="myTable">
    <af:column id="salesColumn" sortProperty="sales" sortable="true" width="30%">
    <f:facet name="header">
    <af:outputText value="#{msg._column_3_Header}"/>
    </f:facet>
    <af:inputText id="salesInput" immediate="true" value="#{row.sales}" columns="8" autoSubmit="true"                     valueChangeListener="#{myManagedBean.updateOtherSales}" />
    <af:outputText id="salesOutput2" partialTriggers="salesInput" value="#{myManagedBean.otherSales}" />
    <f:facet name="footer">
    <af:outputText id="salesOutput" partialTriggers="salesInput" value="#{myManagedBean.otherSales}"/>
    </f:facet>
    </af:column>
    <af:table>
    <af:inputText id="test" value="#{myManagedBean.bla}" immediate="true" columns="8" autoSubmit="true"                     valueChangeListener="#{myManagedBean.updateOtherSales}" />
    <af:outputText id="outsideTheTable" partialTriggers="salesInput" value="#{myManagedBean.otherSales}"/>
    Log output, changing the value of inputText component within the table component. Here you can see that all values are updated to 92 in the view-tree!!! On the screen however it still shows the previous value in the outputText components expect for the outputText with id=salesOutput2 :
    <UIViewRoot id="NULL" FORMER_CHILD_IDS="[_idJsp0]" family="javax.faces.ViewRoot" locale="en" renderKitId="oracle.adf.core" rendered="true" rendererType="NULL" rendersChildren="false" transient="false" viewId="/pages/panel.jsp">
    <oracle.adf.view.faces.component.core.data.CoreColumn id="salesColumn" FORMER_CHILD_IDS="[salesInput, salesOutput2]" partialTriggers="[Ljava.lang.String;@67e9f0f6" width="30%" FORMER_FACET_NAMES="[footer, header]" sortProperty="sales" sortable="true" rendererType="oracle.adf.Column" attributeChangeListener="NULL" attributeChangeListeners="NULL" bandingShade="NULL" facesBean="NULL" facetCount="NULL" facetNames="NULL" family="NULL" footer="NULL" formatType="text" gridVisible="true" header="NULL" headerNoWrap="false" headerText="NULL" inlineStyle="NULL" noWrap="false" onclick="NULL" ondblclick="NULL" onkeydown="NULL" onkeypress="NULL" onkeyup="NULL" onmousedown="NULL" onmousemove="NULL" onmouseout="NULL" onmouseover="NULL" onmouseup="NULL" partialTriggers="[Ljava.lang.String;@67e9f0f6" rendered="true" rendererType="oracle.adf.Column" rendersChildren="NULL" rowHeader="false" separateRows="false" shortDesc="NULL" sortProperty="sales" sortable="true" styleClass="NULL" transient="NULL" width="30%">
              <oracle.adf.view.faces.component.core.output.CoreOutputText id="salesOutput2" value="92" partialTriggers="[Ljava.lang.String;@600d70f6" rendererType="oracle.adf.Text" attributeChangeListener="NULL" attributeChangeListeners="NULL" converter="NULL" description="NULL" escape="true" facesBean="NULL" facetCount="NULL" facetNames="NULL" family="NULL" inlineStyle="NULL" localValue="NULL" onclick="NULL" ondblclick="NULL" onkeydown="NULL" onkeypress="NULL" onkeyup="NULL" onmousedown="NULL" onmousemove="NULL" onmouseout="NULL" onmouseover="NULL" onmouseup="NULL" partialTriggers="[Ljava.lang.String;@600d70f6" rendered="true" rendererType="oracle.adf.Text" rendersChildren="NULL" shortDesc="NULL" styleClass="NULL" transient="NULL" truncateAt="0" value="#{myManagedBean.otherSales}"/>
    <oracle.adf.view.faces.component.core.output.CoreOutputText id="salesOutput" facetName="footer" value="92" partialTriggers="[Ljava.lang.String;@679eb0f6" rendererType="oracle.adf.Text" attributeChangeListener="NULL" attributeChangeListeners="NULL" converter="NULL" description="NULL" escape="true" facesBean="NULL" facetCount="NULL" facetNames="NULL" family="NULL" inlineStyle="NULL" localValue="NULL" onclick="NULL" ondblclick="NULL" onkeydown="NULL" onkeypress="NULL" onkeyup="NULL" onmousedown="NULL" onmousemove="NULL" onmouseout="NULL" onmouseover="NULL" onmouseup="NULL" partialTriggers="[Ljava.lang.String;@679eb0f6" rendered="true" rendererType="oracle.adf.Text" rendersChildren="NULL" shortDesc="NULL" styleClass="NULL" transient="NULL" truncateAt="0" value="#{myManagedBean.otherSales}"/>
    </oracle.adf.view.faces.component.core.data.CoreColumn>
    <oracle.adf.view.faces.component.core.output.CoreOutputText id="outsideTheTable" value="92" partialTriggers="[Ljava.lang.String;@73e070f6" rendererType="oracle.adf.Text" attributeChangeListener="NULL" attributeChangeListeners="NULL" converter="NULL" description="NULL" escape="true" facesBean="NULL" facetCount="NULL" facetNames="NULL" family="NULL" inlineStyle="NULL" localValue="NULL" onclick="NULL" ondblclick="NULL" onkeydown="NULL" onkeypress="NULL" onkeyup="NULL" onmousedown="NULL" onmousemove="NULL" onmouseout="NULL" onmouseover="NULL" onmouseup="NULL" partialTriggers="[Ljava.lang.String;@73e070f6" rendered="true" rendererType="oracle.adf.Text" rendersChildren="NULL" shortDesc="NULL" styleClass="NULL" transient="NULL" truncateAt="0" value="#{myManagedBean.otherSales}"/>
    </oracle.adf.view.faces.component.html.HtmlCellFormat>
    </oracle.adf.view.faces.component.html.HtmlRowLayout>
    </oracle.adf.view.faces.component.html.HtmlTableLayout>
    </oracle.adf.view.faces.component.core.CoreForm>
    </oracle.adf.view.faces.component.core.CoreDocument>
    </UIViewRoot>

    In EA14, the return from the dialog required a full-page refresh (whether the dialog was launched with PPR or not didn't matter). In EA15, it's done with PPR if possible. This avoids the flash (and re-scrolling, etc.), but means you do need to tell us what's going to get changed because of the return. You can use partialTriggers on the table with the "id" of the button to make this happen.

Maybe you are looking for

  • How to get a Canon MP830 on a TC to work again with my iMac?

    I have a Canon MP830 attached to my Time Capsule and it has worked fine for 18 months. My iMac is wired directly via ethernet cable into the TC. (And with the help of this forum I even managed to my XP and Vista PCs to wirelessly print to it). Then t

  • Preview.app in Snow Leopard doesn't open some jpg files

    Preview.app in Snow Leopard doesn't open some jpg files. Preview does't issue an error message, it behaves as I did't try to open file at all. These images could be easy opened in iPhoto, so files seem to be OK. I couldn't attach one such example ima

  • Is it Possible to Change Song List Background to Black w/ White Lettering?

    I have the grid view in black and have Silent Night which changes everything else other than the song list and left side-bar to black. Would love to complete my blackout state. I spend lots of time listening to music in the dark. White is the devil.

  • Resizing Problem PSE 11

    PSE 11 Mac OSX 10.8.5 I have been resizing some of my scanned images on my hard drive to reduce their size and free up hard disc space. The resizing process seems to be working normally - save.replace existing file etc. but strangely on RANDOM occasi

  • Customize EDI

    hi everyone I have to send PO details to a 3rd party through EDI via XML I wanted to ask if I have to do configurations  just like IDOC i.e. 1) create logical system 2) create port 3) create partner profile The for the XML conversion, I dont know Can