ADF Mobile: Templates, Reusable regions, Declarative components

Hi,
Unfortunately the developer guide has no mention about how to create page templates, re-usable regions, and declarative components. Does ADF Mobile currently support them? Please shed some light.
Thanks
Srini

Not right now.
But you can use the deploy as feature to develop reusable features that can be shared among applications.
http://docs.oracle.com/cd/E35521_01/doc.111230/e24475/deploying.htm#CHDCGBIE

Similar Messages

  • ADF Mobile : sample no Vegas

    hi
    Please consider this tweet by Duncan Mills
    " @fnimphiu so it's like Vegas - "what happens in a region - stays in a region" "
    at https://twitter.com/DuncanMills/status/255318833412308992
    I wonder how much this translates to bounded task-flows and using managed-beans in a bounded task-flow that are defined in a wider scope outside the bounded task-flow.
    In the ADF Mobile CompGallery sample application [1] the bounded task-flow "general-taskflow" has a view configured for the page "commandButton.amx".
    That "commandButton.amx" page has this button component:
    <amx:commandButton id="back" action="__back" text="General">
         <amx:setPropertyListener to="#{AmxProperties.commandButtonProperties.text}" from="#{pageFlowScope.pText}" type="action"/>
         <amx:setPropertyListener to="#{AmxProperties.commandButtonProperties.rendered}" from="#{pageFlowScope.pRendered}" type="action"/>
         <amx:setPropertyListener to="#{AmxProperties.commandButtonProperties.icon}" from="#{pageFlowScope.pIcon}" type="action"/>
         <amx:setPropertyListener to="#{AmxProperties.commandButtonProperties.iconPosition}" from="#{pageFlowScope.pIconPosition}" type="action"/>
         <amx:setPropertyListener to="#{AmxProperties.commandButtonProperties.styleClass}" from="#{pageFlowScope.pStyleClass}" type="action"/>
         <amx:setPropertyListener to="#{AmxProperties.commandButtonProperties.inlineStyle}" from="#{pageFlowScope.pInlineStyle}" type="action"/>
         <amx:setPropertyListener to="#{AmxProperties.commandButtonProperties.disabled}" from="#{pageFlowScope.pDisabled}" type="action"/>
    </amx:commandButton>The #{AmxProperties} managed-bean has been defined in adfc-mobile-config.xml like:
        <managed-bean id="__37">
            <managed-bean-name>AmxProperties</managed-bean-name>
            <managed-bean-class>mobile.AmxProperties</managed-bean-class>
            <managed-bean-scope>application</managed-bean-scope>
        </managed-bean>- (q1) Is using (depending on) an application-scoped managed-bean in a bounded task-flow view/page good practice (in ADF Mobile)?
    - [1] http://docs.oracle.com/cd/E35521_01/doc.111230/e24475/demoapps.htm#BACGDHDJ
    many thanks
    Jan Vervecken

    Hi,
    First let's forget region for a sec (or a while), since ADF Mobil has no region support. :-)
    Now, ADF Mobile primarily supports 3 types of scopes for managed bean: application, pageFlow, and view. The definition and scope for these scope variables are basically the same as the "big" ADF cousin, except "application" takes on a little more significance. In ADF Mobile applications, we introduced a concept called "features", where each feature can be implemented either in AMX, local HTML, or Remote HTML. To pass state between features, you would need to use application scope variables. This is how, for example, you can pass data from a Remote HTML feature into an app scope variable, and then have the AMX feature to consume it.
    Otherwise, the best practice is the same - application is to share data across the entire mobile app/between features, pageFlow is for a task flow, and view is for a view.
    In this case below, the intent for the property related managed beans is simply to retain property values as user select between different components (and corresponding task flows) to view how component behaves. The managed beans for DVT component data are set to be application scope, also to allow multiple DVT components and corresponding task flows to share the same data.
    Thanks,
    Joe Huang

  • ADF Mobile does not show up on the list of extensions in JDev

    I can't find the ADF Mobile template or add it in 12c.
    Am I missing something here?

    Hi,
    ADF Mobile only exists for JDeveloper 11.1.2.4. The 12c version of ADF Mobile will ship with JDeveloper 12.1.3 which has not been released yet
    Frank

  • Reusable toolbar with Oracle ADF declarative components(ADf code corner)

    Hi All,
    Using Jdeveloper 11.1.1.2.0.
    Following the how to achieve "reusable toolbar with Oracle ADF declarative components" published here
    [http://www.oracle.com/technology/products/jdev/tips/fnimphius/GenericMenuBar/genericMenuBar.html]
    But I am not getting any method parameters under JSP Objects -> Components when binding the buttons toolbar menu buttons.Following is the code I have in my GeneralToolbarComponent.jspx
    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
    <jsp:directive.page contentType="text/html;charset=UTF-8"/>
    <af:componentDef var="attrs" componentVar="component">
    <af:toolbar id="dc_t1">
    <af:commandToolbarButton text="commandToolbarButton 1" id="dc_ctb1"/>
    <af:commandToolbarButton text="commandToolbarButton 2" id="dc_ctb2"/>
    <af:commandToolbarButton text="commandToolbarButton 3" id="dc_ctb3"/>
    <af:commandToolbarButton text="commandToolbarButton 4" id="dc_ctb4"/>
    </af:toolbar>
    <af:xmlContent>
    <component xmlns="http://xmlns.oracle.com/adf/faces/rich/component">
    <display-name>GeneralToolbarComponent</display-name>
    <attribute>
    <attribute-name>DataSet</attribute-name>
    <attribute-class>java.lang.String</attribute-class>
    </attribute>
    <component-extension>
    <component-tag-namespace>component</component-tag-namespace>
    <component-taglib-uri>/VikramLib1</component-taglib-uri>
    <method-attribute>
    <attribute-name>handleFirstMethod</attribute-name>
    <method-signature>void
    handleFirstMethod(javax.faces.event.ActionEvent)</method-signature>
    </method-attribute>
    <method-attribute>
    <attribute-name>handleLastMethod</attribute-name>
    <method-signature>void
    handleLastMethod(javax.faces.event.ActionEvent)</method-signature>
    </method-attribute>
    <method-attribute>
    <attribute-name>handleNextMethod</attribute-name>
    <method-signature>void
    handleNextMethod(javax.faces.event.ActionEvent)</method-signature>
    </method-attribute>
    <method-attribute>
    <attribute-name>handlePreviousMethod</attribute-name>
    <method-signature>void
    handlePreviousMethod(javax.faces.event.ActionEvent)</method-signature>
    </method-attribute>
    </component-extension>
    </component>
    </af:xmlContent>
    </af:componentDef>
    </jsp:root>
    Thanks
    Vikram

    Thanks for the link. We are trying to write a template as described on this link - Help on JSF Page Template
    However we are running in to issues after defining the attribute.
    Can anyone help?
    Thanks
    Ajay

  • Issues in ADF mobile application using Trinidad components

    I am facing the following issues when developing a mobile application using trinidad components :
    Jdev version : 11.1.1.6
    1) I dont see a date component using trinidad components? The dev guide http://docs.oracle.com/cd/E23943_01/web.1111/e10140/sup_comp.htm says that tr:inputDate is supported but when i try to drag a data field to jsf page i don't see an option for Trinidad date component. so i went ahead and created an af:inputDate in the page. But the date selection dialog doesnt open up.
    2) i tried using 'Rendered' for conditional rendering of a component but it does not work or refresh immediately, the same problem is solved in my adf application using visible property but looks like there is no 'Visible' property for Trinidad components. any work around?
    3) i wanted to have a 'create insert' call in my task flow before launching the page. Since Task flows are not supported in ADF mobile application, i have added 'ADF Faces' also into my project and created task flow and jsff page as i do for a adf web application the only diff being the usage of trinidad components in my jsff page. is this fine? Also can we mix trinidad components and adf components into the same page?
    4) I have a tr:inputText on a clob input text field which i am updating in ADF page using a clob converter class. Same thing i cannot do for trinidad text as it is resulting in null pointer exception. any solution to update clob fields into database which uses tr:inputText compents.
    Help to solve any one of the above issues (by quoting serial no) would be highly appreciated. Thanks.

    >
    4) I have a tr:inputText on a clob input text field which i am updating in ADF page using a clob converter class. Same thing i cannot do for trinidad text as it is resulting in null pointer exception. any solution to update clob fields into database which uses tr:inputText compents.
    wht is the stack trace.. when is it giving null pointer exception.. explain
    >
    Below is the code for an inputText component based on a CLOB Field.
    <tr:inputText value="#{bindings.ObsComments.inputValue}"
                        label="#{bindings.ObsComments.hints.label}"
                        required="#{bindings.ObsComments.hints.mandatory}"
                        columns="#{bindings.ObsComments.hints.displayWidth}"
                        maximumLength="#{bindings.ObsComments.hints.precision}"
                        id="it4" rows="4" binding="#{ObsMobileBean.obsComments}"
                        showRequired="#{bindings.WoNeeded.attributeValue eq 'Y'}"
                        partialTriggers="sbc1" converter="ClobConverter">
            <f:validator binding="#{bindings.ObsComments.validator}"/>
          </tr:inputText>When i try to render the page it self i face this error initially.
    >
    java.lang.NullPointerException
         at sfi.apps.sso.mobileUi.util.ClobConverter.getAsString(ClobConverter.java:41)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.ValueRenderer.getConvertedString(ValueRenderer.java:63)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.EditableValueRenderer.getConvertedString(EditableValueRenderer.java:163)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.SimpleInputTextRenderer.renderContent(SimpleInputTextRenderer.java:364)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.SimpleInputTextRenderer.encodeAllAsElement(SimpleInputTextRenderer.java:121)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.FormElementRenderer.encodeAll(FormElementRenderer.java:109)
         at org.apache.myfaces.trinidad.render.CoreRenderer.delegateRenderer(CoreRenderer.java:435)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.InputLabelAndMessageRenderer.renderFieldCellContents(InputLabelAndMessageRenderer.java:146)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.LabelAndMessageRenderer._renderFieldCell(LabelAndMessageRenderer.java:492)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.LabelAndMessageRenderer.encodeAll(LabelAndMessageRenderer.java:359)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.InputLabelAndMessageRenderer.encodeAll(InputLabelAndMessageRenderer.java:124)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:341)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:767)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:937)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:405)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelFormLayoutRenderer._encodeFormItem(PanelFormLayoutRenderer.java:911)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelFormLayoutRenderer.access$100(PanelFormLayoutRenderer.java:48)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1419)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1338)
         at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:170)
         at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:290)
         at org.apache.myfaces.trinidad.component.UIXComponent.encodeFlattenedChildren(UIXComponent.java:255)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelFormLayoutRenderer._encodeChildren(PanelFormLayoutRenderer.java:312)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelFormLayoutRenderer.encodeAll(PanelFormLayoutRenderer.java:137)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:341)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:767)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:937)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:405)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:421)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelHeaderRenderer.encodeAll(PanelHeaderRenderer.java:133)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:341)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:767)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:937)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:405)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2633)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:421)
         at oracle.adfinternal.view.faces.renderkit.rich.RegionRenderer._encodeChildren(RegionRenderer.java:278)
         at oracle.adfinternal.view.faces.renderkit.rich.RegionRenderer.encodeAll(RegionRenderer.java:201)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1396)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:341)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:767)
         at oracle.adf.view.rich.component.fragment.UIXRegion.encodeEnd(UIXRegion.java:300)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:937)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:405)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:421)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.renderContent(PanelPartialRootRenderer.java:69)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.renderContent(BodyRenderer.java:142)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.encodeAll(PanelPartialRootRenderer.java:151)
         at org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.encodeAll(BodyRenderer.java:78)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:341)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:767)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:937)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
         at com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:266)
         at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:197)
         at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:189)
         at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:193)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:911)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:367)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:222)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    >
    Now if i remove the tag converter="ClobConverter" then the page renders fine but when i try to submit the values back into the database, then i got the error
    >
    Cannot convert <entered text> of type class java.lang.String to class oracle.jbo.domain.ClobDomain
    >
    My clob converter class is registered in faces-config.xml file and the code for it is also pasted below for reference:
    import javax.faces.component.UIComponent;
    import javax.faces.context.FacesContext;
    import javax.faces.convert.Converter;
    import javax.faces.convert.ConverterException;
    import oracle.jbo.domain.ClobDomain;
    public class ClobConverter implements Converter {
        public ClobConverter() {
        public Object getAsObject(FacesContext context, UIComponent component,
                                  String value) {
            if (context == null || component == null) {
                throw new NullPointerException("FacesContext and UIComponent can not be null");
            if (value == null) {
                return null;
            try {
                return new ClobDomain(value);
            } catch (Exception ex) {
                final String message =
                    String.format("Unable to convert boolean value \"%s\" into a oracle.jbo.domain.Number",
                                  value);
                throw new ConverterException(message, ex);
        public String getAsString(FacesContext context, UIComponent component,
                                  Object value) {
            if (context == null || component == null) {
                throw new NullPointerException("FacesContext and UIComponent can not be null");
            return value.toString();
    }

  • Programmatically adding declarative components (ADF 11g 11.1.1.5.0)

    Hi All,
    We have a number of declarative components that we are utilizing within our ADF implementation, I am trying to create one of those components in a similar fashion to how I create a Rich Input Text (for example)
    RichInputText text = new RichInputText();
    panelForm.getChildren().add(text);
    This doesn't seem to work if I replace the "RichInputText" with "MyDecComp" class, where the declarative component doesn't render. Is there any way to achieve the same outcome with the declarative component as the normal JSF / ADF component.
    Looking forward to your reply.
    Regards,
    Younis
    Edited by: Younis on 7/10/2011 09:01

    Are you talking about custom components?
    This will help you:
    Documentation
    http://download.oracle.com/docs/cd/E14571_01/web.1111/b31973/ad_custom.htmA Sample
    http://andrejusb.blogspot.com/2009/10/custom-declarative-components-in-adf.html- Prasad

  • JDeveloper 11.1.2.3, ADF Faces: aberrant behavior declarative components

    Strange things have been happening with my research into declarative components.
    1. declarative component cannot be used the within the same project it is defined. only in a separate project which consumes it as an adflib
    2. periodically, in the componentdef property inspector for my declarative component would miss displaying all values I defined for "Facet Definitions, Method Signature, Methods". Closer inspection of the code reveals that somehow, the afc tags disappeared! so the code for something like a method attribute would look like:
    <method-attribute>
      <attribute-name>
       commit
      </attribute-name>
    <method-signature>
      void method(javax.faces.event.ActionEvent)
    </method-signature>
    </method-attribute>
    ...instead of:
    <afc:method-attribute>
    <afc:attribute-name>
      commit
    </afc:attribute-name>
    <afc:method-signature>
      void method(javax.faces.event.ActionEvent)
    </afc:method-signature>
    </afc:method-attribute>
    ...3. during design time, the ActionListener attribute of a button (in the declarative component definition) shows up under "warning node" and states "Reference comp.nameofactionlistener" not found.
    Code will run but there are many warnings similar to this.
    anyone else on 11.1.2.3 have similar issues working with declarative components? i'm trying to find steps to reproduce but havent stumbled upon it yet.

    Wes,
    1) is documented at http://docs.oracle.com/cd/E35521_01/web.111230/e16181/af_reuse.htm#autoId21
    2) and 3) I personally have not stumbled upon, but if you have a reproducible test case you should open an SR or make an entry in the ADFEMF issue tracker (http://java.net/jira/browse/ADFEMG side is currently down :()
    Timo

  • ADF 11g Declarative Components

    Declarative components rock! now is there a way to use them with a managed bean, for example click a button to load a table of data. After you wire this up with the managed bean, partial rendering and deploy as library it will work in a new project as a new component. However the partial submit and trigger doesn't seem to stick. It does a full page submit. Is there a solution for this???
    thanks.

    Hi,
    I have a DC, which contains a panelCollection with a toolbar and buttons in it. The panelCollection's child is a facetRef. On a consuming page I insert into the facet a table.
    How can I get the toolbar's buttons get updated, once the table's contents have changed?
    Particularly, disabled properties of the buttons are exposed as attributes of the DC. On the consuming page the attributes are bound to enabled properties of a commit and a rollback binding actions. Initially the buttons are disabled. When I change a cell's value it would be nice, if the buttons would be enabled in response without refreshing the page or invoking an execute on an undelying VO/iterator.
    Regards,
    Y.

  • Lightweight alternative to Declarative Components?

    Hi,
    Is there a simpler, lighter way to extract part of an ADF page into a re-usable tag that can be used instead of the Declarative Components feature?
    In my application, I have a table which displays some data from a VO. Some columns are links, and there are also various buttons in and around the table that allow the user to perform a set of common actions on the table contents. I don't want to have to replicate this into all my various pages, I want to extract this into a reusable 'tag'.
    This is not a component that will be useful throughout the organisation, it's just a simple component that will be used a few times in this one application. My first idea was to use the ADF declarative component feature, but this requires deployment of a seperate JAR. I've followed various tutorials now on creating a jar then including it into my project, but I haven't succeeded so far (for some reason the jar I create doesn't seem to contain the Declarative Components I have defined). Can I not simply define some components in my own application and use them within that application without the JAR deployment step?
    I've also tried going the JSP tag route, but I need to pass objects such as the backing bean and the view object iterator to the tag and when I try and add a tag attribute with deferredValue="true", I get an error from the app server like:
    /WEB-INF/tags/attachments.tagx: Line # 9, <jsp:directive.attribute name="backingBean" required="true" deferredValue="true" type="java.lang.Object" xmlns:jsp="http://java.sun.com/JSP/Page"/>
    Error: Invalid attribute "deferredValue", for the  attribute directive with name " backingBean " when the tld version is not 2.1
         at oracle.jsp.parse.JspRTTag.<init>(JspRTTag.java:247)
         at oracle.jsp.parse.JspRTTag.<init>(JspRTTag.java:237)
         at oracle.jsp.parse.JspParseState.createTagParser(JspParseState.java:943)
         at oracle.jsp.parse.JspParseTag.genXMLSrcTag(JspParseTag.java:919)Even though my implicit.tld does have version="2.1".
    My third and final idea was to create a jsff and include it in the page via f:subview and jsp:include, however I can then only pass string type parameters (jsp:param) to the fragment. This isn't adequate, since I need to pass backing bean, view object iterator, etc.
    Surely I'm missing an easy way to do this. Any ideas?

    I've now succeeded in creating a Declarative Components library and importing those components into my project. It's a rather long winded process but if it works I guess it'll do.
    I've created a component called 'attachments', but I'm now getting the following exception when attempting to use the components in my page:
    java.io.FileNotFoundException: MDS-00013: no metadata found for metadata object "/components/attachments.jspx"
         at oracle.mds.jsp.MDSJSPProviderHelper.fromStream(MDSJSPProviderHelper.java:120)
         at oracle.adf.library.webapp.ADFJspResourceProvider.fromStream(ADFJspResourceProvider.java:333)
         at oracle.jsp.parse.XMLUtil.getFromStream(XMLUtil.java:280)
         at oracle.jsp.runtimev2.JspPageCompiler.compileBothModes(JspPageCompiler.java:477)
         at oracle.jsp.runtimev2.JspPageCompiler.parseAndGetTreeNode(JspPageCompiler.java:454)
         at oracle.jsp.runtimev2.JspPageInfo.compileAndLoad(JspPageInfo.java:653)
         at oracle.jsp.runtimev2.JspPageTable.compileAndServe(JspPageTable.java:643)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:379)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:722)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:646)
         ...Another post on the forum says the solution is to create a pageDef file for the jspx, however I can't create a pageDef for a component as far as I can tell.
    Is there a solution here? Can MDS and Declarative Components be used together?

  • ADF Mobile: Deployment Error: MessageDigest SHA-1 implementation not found

    Hi,
    I was trying to create and deploy a test application as outlined in the online tutorial for ADF Mobile:Android
    http://docs.oracle.com/cd/E18941_01/tutorials/MobileTutorial/jdtut_11r2_54_2.html
    After I hit Deploy to emulator, it fails with the following exception:
    trouble writing output:
    [07:01:26 AM] java.lang.RuntimeException: java.security.NoSuchAlgorithmException: MessageDigest SHA-1 implementation not found.
    I have successfully deployed applications developed from Eclipse with Android extension on the same emulator.
    I tried manual cmd line deployment of the generated apk file
    I got [INSTALL_PARSE_FAILED_NO_CERTIFICATES] error first.
    I then followed the instructions in the below post to create a keystore, sign the application and again deploy the application
    signing error with abt deployment with ADF Mobile and java 1.7
    I got the following error.
    C:\Program Files\Android\android-sdk\platform-tools>adb -e install -r C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3/testapp.apk
    100 KB/s (21928920 bytes in 212.281s)
    pkg: /data/local/tmp/testapp.apk
    Failure [INSTALL_FAILED_DEXOPT]
    Is it a BUG or am I missing something? Appreciate if someone can help me out.
    Specs. Win XP
    Android 4.1.2 (API 16)
    Jdev
    Studio Edition Version 11.1.2.3.0
    Build JDEVADF_11.1.2.3.0_GENERIC_120914.0223.6276.1
    ADF Mobile Framework     oracle.adf.mobile     11.1.2.3.39.62.94     Fully Loaded
    Deployment Log:
    [06:58:00 AM] Updating Android profile dependencies with FAR profiles created from application projects...
    [06:58:01 AM] ---- Deployment started. ----
    [06:58:01 AM] Target platform is (Android).
    [06:58:01 AM] Beginning deployment of ADF Mobile application "TestApp" to Android using profile "ANDROID_MOBILE_NATIVE_archive3".
    [06:58:03 AM] Checking state of Android Debug Bridge server...
    [06:58:04 AM] Android Debug Bridge server already running.
    [06:58:11 AM] Verifying a single Android emulator is online and connected to the ADB server...
    [06:58:11 AM] Beginning deployment of ADF Mobile application "TestApp" to Android using profile "ANDROID_MOBILE_NATIVE_archive3".
    [06:58:11 AM] Running dependency analysis...
    [06:58:11 AM] Building...
    [06:58:11 AM] Deploying 3 profiles...
    [06:58:18 AM] Wrote Archive Module to C:\Jwork\TestApp\ApplicationController\deploy\ApplicationController.jar
    [06:58:18 AM] WARNING: No Resource Catalog enabled ADF components found to package
    [06:58:18 AM] Wrote Archive Module to C:\Jwork\TestApp\ViewController\deploy\ViewController.jar
    [06:58:18 AM] Starting to prepare the packaging...
    [06:58:18 AM] Verifying Application Controller project exists...
    [06:58:18 AM] Verifying application dependencies...
    [06:58:18 AM] Validating application XML files...
    [06:58:18 AM] Validating XML files in project ApplicationController...
    [06:58:18 AM] Validating XML files in project ViewController...
    [06:58:19 AM] Copying FARs to the ADF Mobile Framework application...
    [06:58:19 AM] Copying FAR from source: ViewController...
    [06:58:19 AM] Copying FAR from source: ApplicationController...
    [06:58:19 AM] Copying Android template...
    [06:59:19 AM] Copying framework resource files...
    [06:59:20 AM] Copying framework java resource files...
    [06:59:43 AM] Copying common javascript files...
    [07:00:01 AM] Deploying skinning files...
    [07:00:01 AM] Copying application image files...
    [07:00:02 AM] Copying ADF Mobile configuration files...
    [07:00:02 AM] Copying .adf files...
    [07:00:02 AM] Copying security related files to the ADF Mobile Framework application...
    [07:00:02 AM] Creating Android preferences XML files...
    [07:00:02 AM] Creating AndroidManifest.xml file...
    [07:00:02 AM] Creating unsigned Android application file...
    [07:00:58 AM] Compiling Android Resource Identifier file...
    [07:01:01 AM] Creating Android classes.dex file from class files...
    [07:01:26 AM] Command-line executed: ["C:\Program Files\Android\android-sdk\platform-tools\dx.bat", dex, debug, keep-classes, output="C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\classes.dex", C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\classes, C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\AND_ksoap.jar, C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\Container.jar, C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\IDMMobileSDK.jar, C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\logging_dalvik_release.jar, C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\phonegap.jar, C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\vmchannel_dalvik_release.jar]
    [07:01:26 AM]
    [07:01:26 AM] trouble writing output:
    [07:01:26 AM] java.lang.RuntimeException: java.security.NoSuchAlgorithmException: MessageDigest SHA-1 implementation not found
    [07:01:26 AM] at com.android.dx.dex.file.DexFile.calcSignature(DexFile.java:631)
    [07:01:26 AM] at com.android.dx.dex.file.DexFile.toDex0(DexFile.java:591)
    [07:01:26 AM] at com.android.dx.dex.file.DexFile.toDex(DexFile.java:216)
    [07:01:26 AM] at com.android.dx.command.dexer.Main.writeDex(Main.java:574)
    [07:01:26 AM] at com.android.dx.command.dexer.Main.run(Main.java:218)
    [07:01:26 AM] at com.android.dx.command.dexer.Main.main(Main.java:174)
    [07:01:26 AM] at com.android.dx.command.Main.main(Main.java:91)
    [07:01:26 AM] Caused by: java.security.NoSuchAlgorithmException: MessageDigest SHA-1 implementation not found
    [07:01:26 AM] at org.apache.harmony.security.fortress.Engine.getInstance(Engine.java:137)
    [07:01:26 AM] at java.security.MessageDigest.getInstance(MessageDigest.java:75)
    [07:01:26 AM] at com.android.dx.dex.file.DexFile.calcSignature(DexFile.java:629)
    [07:01:26 AM] ... 6 more
    [07:01:26 AM] Command-line execution failed (Return code: 2)
    [07:01:26 AM] Command-line executed: "C:\Program Files\Android\android-sdk\platform-tools\dx.bat" dex debug keep-classes output="C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\classes.dex" C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\classes C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\AND_ksoap.jar C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\Container.jar C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\IDMMobileSDK.jar C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\logging_dalvik_release.jar C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\phonegap.jar C:\Jwork\TestApp\deploy\ANDROID_MOBILE_NATIVE_archive3\framework\build\jar\vmchannel_dalvik_release.jar
    [07:01:26 AM] Deployment cancelled.
    [07:01:26 AM] ---- Deployment incomplete ----.
    [07:01:26 AM] Deployment failed due to one or more errors returned by 'C:\Program Files\Android\android-sdk\platform-tools\dx.bat'. The following is a summary of the returned error(s):
    Command-line execution failed (Return code: 2)
    - Thanks
    Sujith
    Edited by: user11272928 on Oct 30, 2012 7:28 PM

    Hi,
    At this point, we really have not fully tested out JDK 1.7, and we rely on Android SDK to actually compile the app. Any way you can add JDK 1.6 to your machine, and configure the Android SDK to use JDK 1.6?
    Thanks,
    Joe Huang

  • Webcenter Portal Support for ADF Mobile Browser

    Hi All,
    I am currently working on an ADF Mobile Browser Application for WebCenter Portal.
    The main issue I face is that WebCenter has some really powerful taskflows and connectors. Is it possible for us to make use of these taskflows in ADF mobile browser? It seems that when used within the trinidad framework, the taskflows are broken.
    I understand from documentation that "Except for page fragments, pop-up in dialogs, and region support, you can use the ADF task flow to develop ADF Mobile browser applications. ADF Mobile browser application that use the ADF task flow only support the trinidad-simple skin family"
    Does this mean that taskflows that use the page fragments, pop up dialogs dont work or that you cant use them within jsff and pop ups?
    Sincerely appreciate any help! thanks

    Hi,
    You can reuse taskflows but you need to modify jsff pages with trinidad components.
    Thanks,
    Minal

  • ADF Mobile Deployment & Android SDKit

    Hi folks,
      Quite few days ago, i go through the ADF mobile document. After a Big gap Again i gave a try to continue my learning in the topic of "Basics of ADF Mobile".
    Where I found oracle doc to start ADF Mobile with simple Oracle JDeveloper 11g Tutorials
    [11:25:53 AM] ----  Deployment started.  ----
    [11:25:53 AM] Target platform is  (Android).
    [11:25:53 AM] Beginning deployment of ADF Mobile application "Application2MobileApp" to Android using profile "Android2".
    [11:25:53 AM] Checking state of Android Debug Bridge server...
    [11:25:57 AM] Started Android Debug Bridge server.
    [11:25:57 AM] Verifying a single Android emulator is online and connected to the ADB server...
    [11:25:57 AM] Running dependency analysis...
    [11:25:57 AM] Building...
    [11:25:59 AM] Deploying 3 profiles...
    [11:25:59 AM] WARNING: No Resource Catalog enabled ADF components found to package
    [11:25:59 AM] Wrote Archive Module to C:\JDeveloper\mywork\Application2MobileApp\ViewController\deploy\ViewController_MobileFeatureArchive1.jar
    [11:26:00 AM] Wrote Archive Module to C:\JDeveloper\mywork\Application2MobileApp\ApplicationController\deploy\ApplicationController_MobileFeatureArchive1.jar
    [11:26:00 AM] Starting to prepare the packaging...
    [11:26:00 AM] Verifying existence of the .adf source directory of the ADF Mobile application...
    [11:26:00 AM] Verifying Application Controller project exists...
    [11:26:00 AM] Verifying application dependencies...
    [11:26:00 AM] Verifying project dependencies...
    [11:26:00 AM] Validating application XML files...
    [11:26:00 AM] Validating XML files in project ApplicationController...
    [11:26:00 AM] Validating XML files in project ViewController...
    [11:26:00 AM] Copying FARs to the ADF Mobile Framework application...
    [11:26:00 AM] Extracting Feature Archive file, "ApplicationController_MobileFeatureArchive1.jar" to deployment folder, "ApplicationController".
    [11:26:00 AM] Extracting Feature Archive file, "ViewController_MobileFeatureArchive1.jar" to deployment folder, "ViewController_MobileFeatureArchive1".
    [11:26:00 AM] Copying Android template...
    [11:26:37 AM] Copying framework resource files...
    [11:26:37 AM] Copying framework java resource files...
    [11:26:41 AM] Copying common javascript files...
    [11:27:16 AM] Deploying skinning files...
    [11:27:20 AM] Copying application image files...
    [11:27:20 AM] Copying ADF Mobile configuration files...
    [11:27:20 AM] Copying .adf files...
    [11:27:20 AM] Copying security related files to the ADF Mobile Framework application...
    [11:27:20 AM] Creating Android preferences XML files...
    [11:27:21 AM] Creating AndroidManifest.xml file...
    [11:27:21 AM] Creating Google Cloud Messaging intent service file GCMIntentService.java...
    [11:27:21 AM] Creating unsigned Android application file...
    [11:27:50 AM] Compiling Android Resource Identifier file...
    [11:27:52 AM] Creating Android classes.dex file from class files...
    [11:28:03 AM] Updating unsigned Android application file with DEX file and .adf content...
    [11:28:12 AM] Creating debug key store...
    [11:28:14 AM] Signing application...
    [11:28:24 AM] Deploying ADF Mobile Framework application to Android emulator (this may take a few minutes)...
    [11:34:30 AM] ADF Mobile Framework application successfully deployed to Android emulator.
    [11:34:30 AM] Shutting down Android Debug Bridge server...
    [11:34:30 AM] ****************************************************************************************
    [11:34:30 AM] This ADF Mobile app was deployed in Debug mode and should not
    [11:34:30 AM] be used for performance evaluation purposes.
    [11:34:30 AM] Set the deployment profile Build Mode option to Release for performance testing.
    [11:34:30 AM] ****************************************************************************************
    [11:34:30 AM] Elapsed time for deployment:  8 minutes, 37 seconds
    [11:34:30 AM] ----  Deployment finished.  ----
    After deployment i noticed that this simple Application hardly taking 10 minutes for me for deploying and document also produce the same.
    Android SDkit is seems to slow to see my deployed App
    Is there any possibility to improve the performance also those things.?
    See the 46 to 48 line Log says :"Something harmful"
    I followed the document as suggested i did int change anything. document also having the same.
    From my understanding i have to change mode while deploying. i also cross check that there is no mode options while creating the deployment profile
    please anyone tell me. what going on.
    Jdev 11.1.2.4.0
    Anderoid SDK Manager. Revision 22.2.1
    Thanks.

    Subramanian ,
    As mentioned in above post use release mode , not only does it reduce the deployment time to a few mins (from 10 mins as you specified) , but also reduces the archive size to a third.
    See more details on how to setup release mode alongwith setting up the keystore -
    https://blogs.oracle.com/shay/entry/speed_up_adf_mobile_deployment

  • PropertyChangeSupport in ADF Mobile

    I'm working with ADF Mobile - altogether easier and more powerful than I thought - much faster development than with the Android SDK, and multiple device support thown in.
    I'm seeing in the bean samples that PropertyChangeSupport is used for every bean variable on setting (via the firePropertyChange method, but also with the fireProviderRefresh and fireProviderCreate methods).
    The ADF API has scant documentation:
    "This is a utility class that can be used by beans that support bound properties. You can use an instance of this class as a member field of your bean and delegate various work to it."
    Is this a new way to work with bean values? It appears to be mobile only (in the adfmf package), so it is a different way to handle this?
    When do I use this? Which methods do I call?
    Is there more documentation?
    Thanks,
    Ed.

    Hi,
    this is normal JavaBean development in which properties notify listeners about change (thus bound properties). In the ADF Mobile case the framework listens and you can use this to refresh a component. See http://www.oracle.com/technetwork/developer-tools/adf/learnmore/m02-dynamicallyshowhidecomponents-1915399.pdf where I used this to dynamically show/hide components. So to answer your question: yes its spcific to ADF mobile and not required in Web ADF. But then its not specific because you would use the same in Java desktop UI development too.
    Frank

  • How to get the ADF Mobile Client extension

    Hi all,
    Please post some link in which I can download the ADF Mobile Client extension for Jdeveloper 11.1.1.4.0 directly to my local disk. I have tried going through Help --> Check for updates in Jdeveloper but my proxy does not
    allow it. so the only possible option for me is to download it to my local disk and should update it. I searched for it but was unable to find the appropriate link so I got to post here. Kindly help me out in finding it please....
    Thanks,
    Phanindra.

    Hi Timo,
    Now I am more confused whether it is available or not. In the oracle site I have seen that I can develop mobile apps using trinidad components in which <trinidad-config> file can be used to define the different platforms on
    which the application can be rendered. Is it true ?? When I created a mobile app I got only <trinidad-config> I didnt get <trinidad-skins> in which I can define the style sheet. There is a lot of confusion in how to proceed to
    develop the application. Kindly help me on this. I need to develop a mobile app which is not only accessible in Blackberry but should also be able to get rendered on the other platforms also. Which is the best way to develop a
    POC on this. Kindly help me timo.
    thanks,
    Phanindra.

  • Quick answer needed----Does Oracle ADF Mobile support Canvas in HML5?

    I am interested in Oracle ADF Mobile and want to develop a native mobile product on ipad maybe other tablet devices with CAD functionality. But I can't find a way to create HTML5 with Canvas on it. I wonder if Oracle ADF Mobile can do it. If so, how?
    Thanks
    Ling
    Edited by: 973623 on Nov 28, 2012 8:51 AM

    Hi,
    ADF Mobile comes with a rich set of Data Visualization Components (charts/graphs/etc) that's based on HTML5 Canvas. You would not need to develop your own set of HTML5 components. This is applicable to the new on-device version of ADF Mobile. You would need to create an ADF Mobile app, and create your user interface using AMX components. The graphics component set is call DVT Mobile AMX.
    If you decide to create your own HTML5-based pages with HTML5 canvas-based graphics component, you can still host your own HTML5 page inside ADF Mobile. However, you would need to create your own HTML5 page.
    Thanks,
    Joe Huang

Maybe you are looking for

  • Finding the url for Portal Admin console

    Hi all, I got a portal .ear file from my team member to deploy on an env with Weblogic portal 10.3.2. The Application is deployed fine and is in Active state. Now I need to find the exact url for the portal Admin console. I am not able to find which

  • Macbook upgrade to Lion.. how do i minimize what applications start up from boot ?

    how do i minimize what applications start up from boot (start-up) ?? excel, word, safari and mail are all opening takes too long

  • Find/change, ignore superscript

    Hello, I want to convert all of my text to a paragraph style I've called 'Body', but not the superscript characters within it. I've tried changing the superscript characters to another font and colour before doing a find and replace but they still ge

  • ACE 4700 one-arm design with SSL termination

    Hi, We are evaluating the one-arm design for the ACE 4700 and need some clarifications: 1. Are there any limitations in the one-arm design and the SSL offloading 2. Can the ACE be configured with an IN and an OUT vlan to the router CLIENT -> Router -

  • Error after updating ios 7.0.3

    I need some of your techinical help people. I have an iPad 2 I could not update to 7.0.3. over my wifi and found that if I connected to my PC it would do it via iTunes. I updated to 7.0.3 and it backed up my iPad before updating.  I went to watch TV