Adf Mobile Header Title

Hi,
I'm developing and ADF Mobile App using JDev 11.1.2.4. Deploying to IPhone.
I have an AMX page with a Title in the facet header and a command button as the primary action (back button).
That button has a long text inside. It goes over the header title. I need that button to push the header title.
Is there a way to do that with CSS or i need to control the size of the text inside the button?
Thank you.

Thanks for the reply!
So, I have created a new file named myipad.css under styles folder in resources of Application Controller project with following contents:
.amx-panelPage-header{
    height: 144px;
And my adfmf-skins.xml looks like below:
<?xml version="1.0" encoding="UTF-8" ?>
<adfmf-skins xmlns="http://xmlns.oracle.com/adf/mf/skin">
<skin id="s1">
        <id>mobileFusionFx.iPad</id>
        <family>mobileFusionFx</family>
        <extends>mobileFusionFx.iPad</extends>
       <style-sheet-name>styles/myipad.css</style-sheet-name>
    </skin>
</adfmf-skins>
However, on running the app looks like there is not effect of it. Please advise what is wrong here.

Similar Messages

  • Is it possible to call wcf webservice on adf mobile?

    Hi all,
    I tried to consume a wcf webservice method on adf mobile by using java api as seen as below code snippet.
    I tried to run on classical adf generic application by creating webservice proxy. Then i could get response properly. But when i consume webservice method on adfmobile i get http 501 error response. I have tried using drag and drop into amx page and execute binding action, result is same.
    What might be the reason?
    brgds
        private boolean validateClient()
            List pnames = new ArrayList();
            List pvals = new ArrayList();
            List ptypes = new ArrayList();
            pnames.add("UserName");
            pvals.add("test");
            ptypes.add(String.class);
            pnames.add("Password");
            pvals.add("123");
            ptypes.add(String.class);
            pnames.add("DeviceID");
            pvals.add("123456");
            ptypes.add(String.class);
            GenericType result = null;
            try
                ClientDetail clientDetail = null;
                result = (GenericType)AdfmfJavaUtilities.invokeDataControlMethod("mlService", null, "ValidateClient", pnames, pvals, ptypes);
                for (int i = 0; i < result.getAttributeCount(); i++)
                    // Get each individual GenericType instance that holds the attribute key-value pairs
                    GenericType entityGenericType = (GenericType)result.getAttribute(i);
                    clientDetail = (ClientDetail)GenericTypeBeanSerializationHelper.fromGenericType(ClientDetail.class, entityGenericType);
                if (clientDetail != null)
                    if (clientDetail.getIsValidate().booleanValue())
                        return true;
                    else
                        AdfmfContainerUtilities.invokeContainerJavaScriptFunction("com.accmee.menu", "navigator.notification.alert",
                                                                                  new Object[] { "No access",
                                                                                                 "No access: ", "Ok" });
                } else
                        AdfmfContainerUtilities.invokeContainerJavaScriptFunction("com.accmee.menu", "navigator.notification.alert",
                                                                                  new Object[] { "No access",
                                                                                                 "No access: ", "Ok" });
                    return false;
            catch (AdfInvocationException aie)
                if (AdfInvocationException.CATEGORY_WEBSERVICE.compareTo(aie.getErrorCategory()) == 0)
                    throw new AdfException("Error with the server. Please try later.", AdfException.ERROR);
                aie.printStackTrace();
                throw new AdfException("Uzak veri sağlayısı çağrılırken hata oluştu", AdfException.ERROR);
            return false;

    No, as far as i know they are not secured service. What if they are secured, do i need to authenticate during consuming method in webservice proxy, dont i. But as i said before, i could consume and get response on webservice proxy in regular adf project.
    I can consume methods of another webservice (i.e. http://www.html2xml.nl/Services/Calculator/Version1/Calculator.asmx?WSDL) also in all methods that presented.
    No, i can not obtain access on another way to server, it is remote and out of my control.
    Ok, i tried as you say.
    Problem exists here too. May be an interopability problem on between adf platform and wcf service? What do you think Mr Shmeltzer?
    http://i42.tinypic.com/ny8jtd.png
    <WebServiceConnectionMessages> <debugExecuteFailure> Failed to execute a SAAJ interaction.
    oracle.j2ee.ws.client.jaxws.JRFSOAPFaultException: Client received SOAP Fault from server : The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 'http://tempuri.org/IAuthenticationService/ValidateClient'.
      at oracle.j2ee.ws.client.jaxws.DispatchImpl.throwJAXWSSoapFaultException(DispatchImpl.java:1040)
      at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:826)
      at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:235)
      at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:106)
      at oracle.adf.model.connection.webservice.impl.SaajInteractionImpl.execute(SaajInteractionImpl.java:80)
      at oracle.adfinternal.model.adapter.webservice.provider.soap.SOAPProvider.execute(SOAPProvider.java:324)
      at oracle.adfinternal.model.adapter.webservice.WSDataControl.invokeOperation(WSDataControl.java:277)
      at oracle.adf.model.bean.DCBeanDataControl.invokeMethod(DCBeanDataControl.java:444)
      at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:266)
      at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1626)
      at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2169)
      at oracle.adf.model.bean.DCBeanDataControl.invokeOperation(DCBeanDataControl.java:507)
      at oracle.adf.model.adapter.AdapterDCService.invokeOperation(AdapterDCService.java:307)
      at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:731)
      at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.invokeMethodAction(JUMethodIteratorDef.java:173)
      at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.initSourceRSI(JUMethodIteratorDef.java:656)
      at oracle.adf.model.binding.DCIteratorBinding.callInitSourceRSI(DCIteratorBinding.java:1700)
      at oracle.adf.model.binding.DCIteratorBinding.internalGetRowSetIterator(DCIteratorBinding.java:1674)
      at oracle.adf.model.binding.DCIteratorBinding.refresh(DCIteratorBinding.java:4476)
      at oracle.adf.model.binding.DCExecutableBinding.refreshIfNeeded(DCExecutableBinding.java:341)
      at oracle.adf.model.binding.DCIteratorBinding.getRowSetIterator(DCIteratorBinding.java:1634)
      at oracle.jbo.uicli.binding.MyIteratorBinding.initSourceRSI(JUAccessorIteratorDef.java:768)
      at oracle.adf.model.binding.DCIteratorBinding.callInitSourceRSI(DCIteratorBinding.java:1700)
      at oracle.adf.model.binding.DCIteratorBinding.internalGetRowSetIterator(DCIteratorBinding.java:1674)
      at oracle.adf.model.binding.DCIteratorBinding.refresh(DCIteratorBinding.java:4476)
      at oracle.adf.model.binding.DCExecutableBinding.refreshIfNeeded(DCExecutableBinding.java:341)
      at oracle.jbo.uicli.binding.JUCtrlValueBinding.isAttributeUpdateable(JUCtrlValueBinding.java:1707)
      at oracle.jbo.uicli.binding.JUCtrlValueBinding.isAttributeUpdateable(JUCtrlValueBinding.java:1826)
      at oracle.jbo.uicli.binding.JUCtrlValueBinding.isUpdateable(JUCtrlValueBinding.java:2722)
      at oracle.adfinternal.view.faces.model.AdfELResolver._isReadOnly(AdfELResolver.java:130)
      at oracle.adfinternal.view.faces.model.AdfELResolver.isReadOnly(AdfELResolver.java:147)
      at oracle.adfinternal.view.faces.model.AdfELResolverProxy.isReadOnly(AdfELResolverProxy.java:78)
      at com.sun.faces.el.DemuxCompositeELResolver._isReadOnly(DemuxCompositeELResolver.java:293)
      at com.sun.faces.el.DemuxCompositeELResolver.isReadOnly(DemuxCompositeELResolver.java:322)
      at com.sun.el.parser.AstValue.isReadOnly(Unknown Source)
      at com.sun.el.ValueExpressionImpl.isReadOnly(Unknown Source)
      at oracle.adfinternal.view.faces.renderkit.rich.EditableValueRenderer._getUncachedReadOnly(EditableValueRenderer.java:476)
      at oracle.adfinternal.view.faces.renderkit.rich.EditableValueRenderer.cacheReadOnly(EditableValueRenderer.java:406)
      at oracle.adfinternal.view.faces.renderkit.rich.LabeledInputRenderer.beforeEncode(LabeledInputRenderer.java:128)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:510)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeFormItem(PanelFormLayoutRenderer.java:1088)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.access$100(PanelFormLayoutRenderer.java:50)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1604)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1523)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:187)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:318)
      at org.apache.myfaces.trinidad.component.UIXComponent.encodeFlattenedChildren(UIXComponent.java:283)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeChildren(PanelFormLayoutRenderer.java:420)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.encodeAll(PanelFormLayoutRenderer.java:208)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeFormItem(PanelFormLayoutRenderer.java:1127)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.access$100(PanelFormLayoutRenderer.java:50)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1604)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1523)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:187)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:318)
      at org.apache.myfaces.trinidad.component.UIXComponent.encodeFlattenedChildren(UIXComponent.java:283)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeChildren(PanelFormLayoutRenderer.java:420)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.encodeAll(PanelFormLayoutRenderer.java:208)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeCenterFacet(PanelStretchLayoutRenderer.java:878)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._encodeCenterPane(PanelStretchLayoutRenderer.java:1299)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._encodeMiddlePanes(PanelStretchLayoutRenderer.java:350)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeAll(PanelStretchLayoutRenderer.java:315)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:641)
      at oracle.adf.view.rich.render.RichRenderer.encodeAllChildrenInContext(RichRenderer.java:3062)
      at oracle.adfinternal.view.faces.renderkit.rich.FormRenderer.encodeAll(FormRenderer.java:274)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:641)
      at oracle.adf.view.rich.render.RichRenderer.encodeAllChildrenInContext(RichRenderer.java:3062)
      at oracle.adfinternal.view.faces.renderkit.rich.DocumentRenderer.encodeAll(DocumentRenderer.java:1275)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1677)
      at oracle.adfinternal.view.faces.component.AdfViewRoot.encodeAll(AdfViewRoot.java:91)
      at com.sun.faces.application.view.JspViewHandlingStrategy.doRenderView(JspViewHandlingStrategy.java:431)
      at com.sun.faces.application.view.JspViewHandlingStrategy.renderView(JspViewHandlingStrategy.java:233)
      at org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.renderView(ViewDeclarationLanguageFactoryImpl.java:350)
      at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
      at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:273)
      at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:165)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:1035)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:342)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:236)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:509)
      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:173)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:125)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
      at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
      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)
    <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="http://tempuri.org/"><env:Header/><env:Body><ns1:ValidateClient/></env:Body></env:Envelope><SOAPProvider> <handleFault> The Web Service call generated a SOAP Fault : [s:Sender] The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 'http://tempuri.org/IAuthenticationService/ValidateClient'.
    <SOAPProvider> <handleFault> Verify if all the necessary parameter values are provided correctly and confirm to the schema constraints as defined in the WSDL
    <SOAPProvider> <handleFault> If the service requires any SOAP headers, Verify that they have been correctly defined in the request
    <SOAPProvider> <handleFault> The Web Service may have generated an exception in an attempt to handle the request, and has returned a SOAP fault to indicate that exception.
    brgds

  • Error while creating CustomSOAPProvider in ADF Mobile

    Hi,
    I want to add the security headers to the SOAP request from the ADF mobile application to the webservice.
    But when I am trying to extend the oracle.adfinternal.model.adapter.webservice.provider.soap.SOAPProvider class in my CustomSOAPProvider class, it says "Illegal Internal package import. Please use public api".
    I have changed the audit rules as Tools - Preferences - Audit - Profiles - Audit Rules - Application Development Framework - ADF Common - ADF java audit rules - "Illegal Internal package import. Please use public api" severity and style to "Warning". But still it is not working.
    I am using JDeveloper 11.1.2.3.0 version.
    Please help...

    I couldn't understand which is the intended security policy to be added from the above link.
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <wsse:UsernameToken wsu:Id="UsernameToken-1">
    <wsse:Username>myuser</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">mypassword</wsse:Password>
    <wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">3xp9MFe3E1BDAPjr8ipA8A==</wsse:Nonce>
    <wsu:Created>2013-02-13T08:58:50.649Z</wsu:Created>
    </wsse:UsernameToken>
    </wsse:Security>
    This is my SOAP security header. Which is the security policy to be used here?...

  • While consuming Fusion CRM web service in ADF mobile throwing an error

    Hi,
    I am developing ADF Mobile using JDeveloper
    11.1.2.3 and consuming Fusion CRM ADF Web Services.
    While executing CRUD operations with these web services
    in ADF mobile app, I am getting SOAP response as *Error in getting response
    and got result nothing *.
    And also noticed as using JDeveloper ADF mobile App, unable to create URL service
    Data Control - REST based for FUsion CRM web services. Where as I am able to
    create SOAP based web services data control. It' strange or surprise.
    Did anyone face the above problems. Kindly let me know any suggestions or
    samples to the below contacts
    Regards
    Bhaskara Reddy S
    00919008466722
    bhaskara.sannapureddy at Crmit.com

    Dear Frank,
    Based on below links, Fusion CRM also supports REST also apart from regular SOAP Web Services.
    http://niallcblogs.blogspot.in/2012/10/204-calling-rest-service-from-fusion-crm.html AND
    http://docs.oracle.com/cd/E15586_01/fusionapps.1111/e20388/F412758AN17B21.htm
    (For e.g one of linked in profile :http://www.linkedin.com/in/minalkhodani , many teams are developing using SOAP & REST)
    Designed and developed integration services using SOAP and REST web services for Oracle Fusion CRM Marketing Modules.)
    When creating URL based data control, getting an Error as "Forbidden" , (Does it mean NOT SUPPORTED??) . Kindly advice.
    I am calling WEB SERVICE thru SOAP in AMX PAGE code as below after creating Web Services Data Control from ADF Mobile UI thru JDeveloper IDE.
    == CODE SNIPPET OF AMX PAGE CALLING SOAP FUSION CRM WEB SERVICE =======
    <?xml version="1.0" encoding="UTF-8" ?>
    <amx:view xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:amx="http://xmlns.oracle.com/adf/mf/amx"
    xmlns:dvtm="http://xmlns.oracle.com/adf/mf/amx/dvt">
    <amx:panelPage id="pp1">
    <amx:panelFormLayout id="pfl2">
    <amx:inputText value="#{bindings.name.inputValue}" label="Person First Name" id="it1"/>
    <amx:inputText value="300000001210220" label="Person Object Id" id="it2"/>
    </amx:panelFormLayout>
    <amx:facet name="header">
    <amx:outputText value="Create Person in Fusion CRM" id="ot1"/>
    </amx:facet>
    <amx:facet name="primary">
    <amx:commandButton id="cb1" text="Back" action="__back"/>
    </amx:facet>
    <amx:facet name="secondary">
    <amx:commandButton id="cb2"/>
    </amx:facet>
    <amx:panelFormLayout id="pfl1">
    </amx:panelFormLayout>
    <amx:outputText value="#{bindings.message.inputValue}" id="ot2"/>
    <amx:outputText value="#{bindings.code.inputValue}" id="ot3"/>
    *<amx:commandButton actionListener="#{bindings.createPerson.execute}" text="createPerson"*
    *disabled="#{!bindings.createPerson.enabled}" id="cb3"/>*
    <amx:iterator var="row" value="#{bindings.personParty1.collectionModel}" id="i1">
    <amx:panelLabelAndMessage label=" 300000001210220" id="plam2">
    <amx:outputText value="#{row.PartyId}" id="ot5">
    <amx:convertNumber groupingUsed="false"/>
    </amx:outputText>
    </amx:panelLabelAndMessage>
    <amx:panelLabelAndMessage label="#{bindings.name.inputValue}" id="plam1">
    <amx:outputText value="#{row.PersonFirstName}" id="ot4"/>
    </amx:panelLabelAndMessage>
    </amx:iterator>
    </amx:panelPage>
    </amx:view>
    Regards
    Bhaskara Reddy

  • How to get data from web service in ADF mobile

    I'm new to ADF mobile application development. I'm currently blocked in a scenario. I have a web service(from third party) which needs <wsse:Security> to retrieve data. In soapUI, the web service will retrieve the response only when there is this security tag. Otherwise it will give response as invalid security. The web service looks like this:
            <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xx="http://xmlns.oracle.com/apps/csf/soaprovider/plsql/xx_fs_mob_login/" xmlns:get="http://xmlns.oracle.com/apps/csf/soaprovider/plsql/xx_fs_mob_login/get_login/">
                   <soapenv:Header>
                      <xx:SOAHeader>
                         <!--Optional:-->
                         <xx:Responsibility>XXX</xx:Responsibility>
                         <!--Optional:-->
                         <xx:RespApplication>XXX</xx:RespApplication>
                         <!--Optional:-->
                         <xx:SecurityGroup>XXX</xx:SecurityGroup>
                         <!--Optional:-->
                         <xx:NLSLanguage>XXX</xx:NLSLanguage>
                         <!--Optional:-->
                         <xx:Org_Id>XXX</xx:Org_Id>
                      </xx:SOAHeader>
        <The portion which is excluded from the soap, but which is required for getting response>
        <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
                         <wsse:UsernameToken wsu:Id="UsernameToken-1">
                            <wsse:Username>XXX</wsse:Username>
                            <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">XXX</wsse:Password>
                            <wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">XXX</wsse:Nonce>
                            <wsu:Created>2013-02-13T08:58:50.649Z</wsu:Created>
                         </wsse:UsernameToken>
                      </wsse:Security>
        <The portion which is excluded from the soap, but which is required for getting response>
                   </soapenv:Header>
                   <soapenv:Body>
                      <get:InputParameters>
                         <!--Optional:-->
                         <get:P_USERNAME>XXX</get:P_USERNAME>
                      </get:InputParameters>
                   </soapenv:Body>
                </soapenv:Envelope>
    I tried the steps described in ADF mobile tutorial to get web service data. But I'm getting response code 500 from the server. I tried the steps for secured web service also. But I'm not sure which security policy has been implemented in the web service. I tried with oracle/wss_username_client_token_policy and some others but didn't succeed. Later I tried by creating web service client/proxy. But as Oracle ADF only supports java 1.4, I got errors in the generated code(errors on generics and annotation).
    The WSDL for the web service is as follows:
        <definitions xmlns:tns="http://xmlns.oracle.com/apps/csf/soaprovider/plsql/xx_fs_mob_login/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns1="http://xmlns.oracle.com/apps/csf/soaprovider/plsql/xx_fs_mob_login/get_login/" name="XX_FS_MOB_LOGIN" targetNamespace="http://xmlns.oracle.com/apps/csf/soaprovider/plsql/xx_fs_mob_login/">
        <types>
        <schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://xmlns.oracle.com/apps/csf/soaprovider/plsql/xx_fs_mob_login/get_login/">
        <include schemaLocation="http://27.251.157.211:8000/webservices/SOAProvider/plsql/xx_fs_mob_login/APPS_XX_FS_MOB_LOGIN_GET_LOGIN.xsd"/>
        </schema>
        <schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://xmlns.oracle.com/apps/csf/soaprovider/plsql/xx_fs_mob_login/">
        <element name="SOAHeader">
        <complexType>
        <sequence>
        <element name="Responsibility" minOccurs="0" type="string"/>
        <element name="RespApplication" minOccurs="0" type="string"/>
        <element name="SecurityGroup" minOccurs="0" type="string"/>
        <element name="NLSLanguage" minOccurs="0" type="string"/>
        <element name="Org_Id" minOccurs="0" type="string"/>
        </sequence>
        </complexType>
        </element>
        </schema>
        </types>
        <message name="GET_LOGIN_Input_Msg">
        <part name="header" element="tns:SOAHeader"/>
        <part name="body" element="tns1:InputParameters"/>
        </message>
        <message name="GET_LOGIN_Output_Msg">
        <part name="body" element="tns1:OutputParameters"/>
        </message>
        <portType name="XX_FS_MOB_LOGIN_PortType">
        <operation name="GET_LOGIN">
        <input message="tns:GET_LOGIN_Input_Msg"/>
        <output message="tns:GET_LOGIN_Output_Msg"/>
        </operation>
        </portType>
        <binding name="XX_FS_MOB_LOGIN_Binding" type="tns:XX_FS_MOB_LOGIN_PortType">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <operation name="GET_LOGIN">
        <soap:operation soapAction="http://XXX:8000/webservices/SOAProvider/plsql/xx_fs_mob_login/"/>
        <input>
        <soap:header message="tns:GET_LOGIN_Input_Msg" part="header" use="literal"/>
        <soap:body parts="body" use="literal"/>
        </input>
        <output>
        <soap:body use="literal"/>
        </output>
        </operation>
        </binding>
        <service name="XX_FS_MOB_LOGIN_Service">
        <port name="XX_FS_MOB_LOGIN_Port" binding="tns:XX_FS_MOB_LOGIN_Binding">
        <soap:address location="http://XXX:8000/webservices/SOAProvider/plsql/xx_fs_mob_login/"/>
        </port>
        </service>
        </definitions>
    Please help me to figure out a solution for this.
    Thanks in advance
    Rino

    how to store the data in the mobile which i fetched from the server using RMS. Can u give me a eg. code. here and send me a link to my email id. [email protected]
    I am using Oravle10g as the database. It is installed in the server.
    I made a connection in servlet using ODBC:JDBC.
    I am able to see the data fetched from the server in my mobile.
    Now, i am trying to save the data. But i dont know how to use the RMS to connect to the Oracle database or pass the string etc.
    Do help me if you dont mind.
    I kept reading and tried some codes but i failed.
    Me still trying...........
    Thanks in Advance.

  • JBO-27122 error in ADF mobile client application for blackberry

    Hi,
    I am trying to develop a simple ADF mobile client application for blackberry. Currently, working only with Blackberry 9700 simulator. I am using the following for development:
    - Jdev 11.1.1.3
    - Oracle database lite 10.3.3
    I have done all the steps as given in the oracle demo. But when I try to run the application in blackberry simulator, the page shows the following error:
    ERROR: failed to change page
    oracle.jbo.server.DBTransactionImpl.createPreparedStatement: JBO-27122: SQL error during statement preparation. Statement: select po_header_id from po_headers_all where po_header_id=1
    [oracle.jbo.server.DBTransactionImpl.createPreparedStatement] Encountered exception executing query on ViewObject: header1
    [oracle.jbo.server.DBTransactionImpl.createPreparedStatement] Error retrieving BindingContainer : 'mobile_twoPageDef'
    oracle.adfnmc.java.sql.SQLException:
    oracle.adfnmc.java.sql.SQLException:net.rim.device.api.database.DatabaseException: select po_header_id from po_headers_all where po_header_id=1 : SQL logic error or missing database
    Unable to create/prepare native statement with SQL select po_header_id from po_headers_all from po_header_id=1
    Unable to create PreparedStatement with SQL select po_header_id from po_headers_all from po_header_id=1
    Please suggest what could have been wrong while developing or deploying the application.
    P.S. : The view object (header) shows data successfully when run in the application module. Also, a .db file gets created in the SD card folder. The synchronisation is a success when mSync.exe file is run in the <Oracle_Home>/Mobile/Server/Sdk/bin.

    Sorry my content got repeated.
    you can go through this thread FOD mobile db sync with base adf server db not working
    there is link that you can follow for synchronization (check second last message)
    Edited by: Nikhil Gokhale on Apr 17, 2011 3:55 AM

  • Web service Invocation from ADF mobile app errors

    Mobile App Gurus,
    The webservice when invoked from ADF web app is working fine but, when invoked from Mobile APP errors in emulator with as below...
    D/oracle.idm.mobile.OMAuthenticationServiceManager_onPostExecute( 1096): Authentication serivce is oracle.idm.mobile.SSOAuthenticationService
    D/oracle.idm.mobile.OMAuthenticationServiceManager_onPostExecute( 1096): Authentication context status is IN_PROGRESS
    D/oracle.idm.mobile.OMAuthenticationServiceManager_retrieveAuthenticationContext
    ( 1096): Authentication context for the key appsnet5login.sysadmin retrieved from the credential store is : null
    D/oracle.idm.mobile.OMAuthenticationServiceManager_onPostExecute( 1096): Authentication serivce is oracle.idm.mobile.BasicAuthenticationService
    D/oracle.idm.mobile.OMAuthenticationServiceManager_onPostExecute( 1096): Authentication context status is IN_PROGRESS
    D/oracle.idm.mobile.OMAuthenticationServiceManager_doInBackground( 1096): Invalid Authentication URL.
    Please can you let me know if I am missing some step in ADF Mobile App framework.
    Thanks,
    Shreedhar
    Edited by: sh**** on Apr 22, 2013 5:11 AM
    Edited by: sh**** on Apr 22, 2013 6:50 AM

    I don't know if you fixed it already by this time or not. But here is my findings anyway, to be able to inject the security header correctly in any SOA Gateway service, you need to have your Mobile Application Secured, meaning that there is a prompt for username/password when you open it.
    Then you will have to make a Proxy service for the webservice you are using from apps. And you must create it with a SOAP Handler also and write below sample code in the handler to inject the security header in the SOAP call. At last, you are going to deploy this proxy service to your Application Server.
    These steps were taken on a Glassfish server not Weblogic. I think there is an easy way for this if you are using Weblogic..
    Sample handler is below:
    package com.mobile.xxsoap;
    import java.util.HashSet;
    import java.util.Set;
    import javax.xml.namespace.QName;
    import javax.xml.soap.Name;
    import javax.xml.soap.SOAPElement;
    import javax.xml.soap.SOAPEnvelope;
    import javax.xml.soap.SOAPFactory;
    import javax.xml.soap.SOAPHeader;
    import javax.xml.ws.handler.MessageContext;
    import javax.xml.ws.handler.soap.SOAPHandler;
    import javax.xml.ws.handler.soap.SOAPMessageContext;
    public class CustomSOAPHandler implements SOAPHandler<SOAPMessageContext> {
        private static final String AUTH_PREFIX = "wsse";
        private static final String AUTH_NS =
            "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";
        public boolean handleMessage(SOAPMessageContext context) {
            try {
                SOAPEnvelope envelope = context.getMessage().getSOAPPart().getEnvelope();
                SOAPFactory soapFactory = SOAPFactory.newInstance();
                SOAPElement wsSecHeaderElm = soapFactory.createElement("Security", AUTH_PREFIX, AUTH_NS);   
                SOAPElement userNameTokenElm = soapFactory.createElement("UsernameToken", AUTH_PREFIX, AUTH_NS);
                SOAPElement userNameElm = soapFactory.createElement("Username", AUTH_PREFIX, AUTH_NS);
                userNameElm.addTextNode("redsam");
                SOAPElement passwdElm = soapFactory.createElement("Password", AUTH_PREFIX, AUTH_NS);
                Name passwdTypeAttr = soapFactory.createName("Type");
                passwdElm.addAttribute(passwdTypeAttr,
                                       "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText");
                passwdElm.addTextNode("123456");
                userNameTokenElm.addChildElement(userNameElm);
                userNameTokenElm.addChildElement(passwdElm);
                wsSecHeaderElm.addChildElement(userNameTokenElm);
            } catch (Throwable e) {
                e.printStackTrace();
            return true;
        public Set<QName> getHeaders() {
            return new HashSet<QName>();
        public boolean handleFault(SOAPMessageContext messageContext) {
            return true;
        public void close(MessageContext context) {
    I hope it is clear now...
    Regards,
    Mohamed

  • JDeveloper - ADF Mobile - Web Services Data Control

    Hello,
    I'm new to ADF mobile (newer than ADF mobile itself :) I watched Shay's excellent you tube videos which makes it look really easy to create a mobile projects. I was successfully able to create a simple project and deploy it on my iphone and ipad. The next step is to get data from a web service. I am trying to create web service data control from this wsdl: http://msrmaps.com/TerraService2.asmx?wsdl.
    However I keep getting an unusual error with a dialog of heading: "Invalid WSDL URL" and the dialog says: "oracle/adfinternal/model/adapter/webservice/utils/WSUtils$DefaultAuthPrompter" with an OK button. I tried quite a few things and other applications like Flex Builder and Soap UI and was able to successfully use this wsdl: http://msrmaps.com/TerraService2.asmx?wsdl.
    A few things about my environment:
    I am working on mac OS X 10.8.2
    I have JDeveloper Studio Edition Version 11.1.2.3.0 (Build JDEVADF_11.1.2.3.0_GENERIC_120914.0223.6276.1)
    Java version installed: 1.6.0_37
    I'm at a loss here and not sure what am I missing? I tried googling "DefaultAuthPrompter" and nothing shows up.
    Any help is much appreciated.
    thanks,
    Rahul

    Hi Arun,
    I'm not behind a firewall and access the wsdl directly. I can also use other applications to generate proxy classes from this wsdl url.
    I am starting to wonder if there is missing library on my mac installation of Jdeveloper?
    Rahul

  • ADF Mobile - Securing REST Web Services

    Hi,
    I've developed some REST web services for my ADF Mobile app to use. They work fine but I'm having trouble securing them. According to the developer guide:
    http://docs.oracle.com/cd/E35521_01/doc.111230/e24475/amxwebservices.htm#CHDGFCGD
    10.5.2 How to Enable Access to REST-Based Web Services
    Since only one security policy is supported for REST-based web services, ADF Mobile automatically adds oracle/wss_http_token_over_ssl_client_policy for REST web service over HTTPS, or oracle/wss_http_token_client_policy for REST web service over HTTP protocol to enable Oracle Web Services Manager (OWSM) Lite Mobile ADF Application Agent to inject a proper security header.
    ..so I'm trying to attach the policy oracle/wss_http_token_service_policy to the web service, but deploying it to Weblogic results in the below stack trace.
    I'm trying to attach the policy in JDeveloper by selecting the service class in the java structure pane, then in the Property Inspector, using the "Web Services extension" section to select the policy.
    I'm guessing I've missed a step, but can't find what. Or I'm doing completely the wrong thing. Either way, any help in resolving would be very much appreciated.
    Rich.
    weblogic.application.ModuleException: [HTTP:101216]Servlet: "CDRestServicePort" failed to preload on startup in Web application: "RestServices".
    javax.xml.rpc.JAXRPCException: oracle.wsm.common.sdk.WSMException: WSM-07508 : Oracle WSM Agent initialization failed due to PolicySet validation errors: WSM-07617 Policy: oracle/wss_http_token_service_policy contains unsupported assertions. 
    , with PolicySet=PolicySet [timestamp=Mon Oct 21 13:53:23 BST 2013, subjectPattern=ResourcePattern [pattern=/DefaultDomain/DefaultServer/SOAPServices/WEBs/RestServices.war/WLSWEBSERVICEs/CDRestServiceService/PORTs/CDRestServicePort, subjectType=WLS_SERVICE, terms={PORT=CDRestServicePort, IMPLEMENTATION=WEB, SUBJECT_TYPE=WLS_SERVICE, SERVICE=CDRestServiceService, MODULE=RestServices.war, APPLICATION=SOAPServices, DOMAIN=DefaultDomain, SERVER=DefaultServer}], domainExpression=http://restws.westbourne/#wsdl.endpoint(CDRestServiceService/CDRestServicePort), polmap={oracle/wss_http_token_service_policy={Policy[wsp:http://schemas.xmlsoap.org/ws/2004/09/policy][oralgp:http://schemas.oracle.com/ws/2006/01/loggingpolicy][local-optimization:off][provides:{http://docs.oasis-open.org/ns/opencsa/sca/200903}authentication, {http://docs.oasis-open.org/ns/opencsa/sca/200903}clientAuthentication, {http://docs.oasis-open.org/ns/opencsa/sca/200903}clientAuthentication.transport][status:enabled][xmlns:http://schemas.xmlsoap.org/ws/2004/09/policy][wsu:http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd][Id:wss_http_token_service_policy][displayName:i18n:oracle.wsm.resources.policydescription.PolicyDescriptionBundle_oracle/wss_http_token_service_policy_PolyDispNameKey][orawsp:http://schemas.oracle.com/ws/2006/01/policy][orasp:http://schemas.oracle.com/ws/2006/01/securitypolicy][description:i18n:oracle.wsm.resources.policydescription.PolicyDescriptionBundle_oracle/wss_http_token_service_policy_PolyDescKey][attachTo:binding.server][Name:oracle/wss_http_token_service_policy][xsi:http://www.w3.org/2001/XMLSchema-instance][category:security][{LogAssertion[Logging][{AssertionBindings[{Config[name:Log Message1_properties][{PropertySet[name:standard-security-properties][{Property[type:string][contentType:optional][name:reference.priority]}]}]}]}][{MessageLog[ Request = all][ Response =all]}]}][{HttpSecurityScenario[http-security][Silent:true][name:Http Security][Enforced:true][category:security/authentication][{AssertionBindings[{Config[name:HttpConfig][configType:declarative][{PropertySet[name:standard-security-properties][{Property[type:string][contentType:constant][name:realm][Value:owsm]}][{Property[type:string][contentType:constant][name:role][Value:ultimateReceiver]}][{Property[type:string][contentType:optional][name:reference.priority]}]}]}]}]}][{LogAssertion[Logging][{AssertionBindings[{Config[name:Log Message2_properties][{PropertySet[name:standard-security-properties][{Property[type:string][contentType:optional][name:reference.priority]}]}]}]}][{MessageLog[ Request = all][ Response =all]}]}]}}}, constraintedDataMap={ConstraintGroup [terms=[], size=0, weight=0]=ConstraintedData [status=FAILURE, localoptimization=null, validationErrors=[Error Code:WSM-07617 Error Context:Policy], overrides=[], polRefs=[PolicyReference [policyURI=oracle/wss_http_token_service_policy, polRefQName={http://schemas.xmlsoap.org/ws/2004/09/policy}PolicyReference, version=-1, attributes={{http://schemas.oracle.com/ws/2006/01/policy}status=enabled, {http://schemas.oracle.com/ws/2006/01/policy}category=security}, overrideProps=null]]]}, locked=true]
      at oracle.wsm.agent.handler.wls.WSMAgentHook.handleException(WSMAgentHook.java:462)
      at oracle.wsm.agent.handler.wls.WSMAgentHook.init(WSMAgentHook.java:274)
      at weblogic.wsee.jaxws.framework.jaxrpc.TubeFactory.newHandler(TubeFactory.java:108)
      at weblogic.wsee.jaxws.framework.jaxrpc.TubeFactory.createServer(TubeFactory.java:81)
      at weblogic.wsee.jaxws.WLSTubelineAssemblerFactory$TubelineAssemblerImpl.createServer(WLSTubelineAssemblerFactory.java:216)
      at com.sun.xml.ws.server.WSEndpointImpl.<init>(WSEndpointImpl.java:213)
      at weblogic.wsee.jaxws.WLSContainer$WLSEndpointFactory$WLSEndpointImpl.<init>(WLSContainer.java:623)

    Hi,
    so have you "Oracle Web Services Manager (OWSM) Lite Mobile ADF Application Agent" installed? Sounds this is a pre-requisite for this work
    Frank

  • Need help in UI design in ADF Mobile

    Hi
    I have a requirement to create the interaction as shown in the image at https://picasaweb.google.com/113470899999229420779/February32013?authuser=0&feat=directlink. I am not sure which component is it?
    Please advise how to create this type of button in the header.

    Hi there...
    You should see a popup component in the layout section.
    Also there is a new list view component, which can be set to static fixed data or databound. In ADF mobile, you have to get a little more creative with the use of components and styling. I also see that the display is an application menu.
    ADF Mobile delivers a standard design pattern to achieve this through the springboard... however if you want that particular pattern, a styled popup is definitely the way you go.
    Please check 'helpful' or 'correct' ;-)
    S

  • ADF Mobile _back without iterator refresh (11.1.2.3.0)

    Hi Forum Group,
    In ADF Mobile, does anyone know how to prevent the iterator from refreshing if using the back built-in? Let me try to explain the scenario. I have an amx page with that has two results from two separate rest web services. Both of these rest web services are called with a URLDataControl via pageFlowScope variables assigned within the pageDef. The second result depends upon the result of the first for it to be called. All of this is not a problem as I'm navigating with taskflows and methods and can, therefore, properly populate the parameters (pageFlowScope variables) and call the web services. If, however, I want to iterate with previous and next (moving the rows from the default 0 row index while properly re-querying the second dependency) and then further navigate to a detail page, using the back causes the iterators to refresh (which would be out-of-sync if I did not use a taskflow method to reset everything). I would like, however, the state to remain the same on the "header" page, rather than requerying everything and having to have the user move to the appropriate row that they were wanting again. All I simply need to do is tell the iterator (or URLDataControl) to not requery if _back is used.
    Any ideas?

    Hi Frank,
    Thank you for your response. Is there a way then to execute a piece of code right before the rendering of the page, so that this "current row" can be set? Like in web adf development, the binding to the backing bean can be added to any component and the set serves as an initializer (where code can be added to process things like this).

  • ADF Mobile - Secured WS - MarshalException: xsd:dateTime

    Hello,
    Does anybody have an idea how to investigate/resolve following issue with ADF mobile (JDeveloper 11.1.2.3.0):
    Scenario:
    =====
    1. Feature is secured with Credential Authentication : remote
    2. Feature consumes secured Web Service running on WLS 10.3.5.0
    3. oracle/wss_username_token_over_ssl_client_policy is defined for this WS
    4. WSDL file contains <sp:IncludeTimestamp/> in its Transport Binding's Policy
    5. Application was tested on Android emulator (Android 4.1.2) and on Andorid device (Android 2.3.6) with the same behavior.
    Problem:
    =====
    After successful authentication, WLS responses with Error 500 to SOAP request:
    01-21 12:01:34.117: D/CVM(31062): [SEVERE - oracle.adfmf.framework - HttpServiceConnection - log] Connection Error: 500
    01-21 12:01:34.132: D/CVM(31062): [SEVERE - oracle.adfmf.framework - HttpTransport - parseResponse] Response [Error: 500]: <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header/><env:Body><env:Fault xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><faultcode>wsse:InvalidSecurity</faultcode><faultstring>weblogic.xml.dom.marshal.MarshalException: xsd:dateTime element does not have required UTC time zone.</faultstring></env:Fault></env:Body></env:Envelope>
    01-21 12:01:34.140: D/CVM(31062): [SEVERE - oracle.adfmf.framework - SoapTransportLayer - invokeSoapRequest] Encountered exception while invoking SOAP request
    01-21 12:01:34.140: D/CVM(31062): EndPoint: https://172.22.30.12:8114/DV900/AddressBookManager
    01-21 12:01:34.140: D/CVM(31062): SOAPAction: "http://oracle.e1.bssv.JP010000//getAddressBook"
    01-21 12:01:34.140: D/CVM(31062): Exception: HTTP Status Code 500 Internal Server Error: The server encountered an unexpected condition which prevented it from fulfilling the request.
    01-21 12:01:34.187: D/CVM(31062): [SEVERE - oracle.adfmf.framework - GenericInvokeRequestHandler - invoke] InvocationTargetException Error: ERROR [oracle.adfmf.framework.exception.AdfInvocationRuntimeException] - HTTP Status Code 500 Internal Server Error: The server encountered an unexpected condition which prevented it from fulfilling the request.
    01-21 12:01:34.195: D/CVM(31062): [SEVERE - oracle.adfmf.framework - GenericInvokeRequestHandler - process] Process AdfException caught: ERROR [oracle.adfmf.framework.exception.AdfInvocationRuntimeException] - HTTP Status Code 500 Internal Server Error: The server encountered an unexpected condition which prevented it from fulfilling the request.
    I assume, that application doesn't send UTC time zone in elements Created:dateTime and Expires:dateTime in Username Token.
    Is there anything what I can set up on JDeveloper side?
    Thanks a lot,
    Daniel

    Daniel,
    I encountered the same issue, webservice when invoked from ADF web app is working fine but, errors in emulator with the below error.
    HTTP Status Code 500 Internal Server Error: The server encountered an unexpected condition which prevented it from fulfilling the request.
    have you got any update from oracle on this ?
    Please do share any work around for this if you have..
    Thanks
    Shreedhar

  • ADF Mobile - XML Parsing

    Previously I posted on calling a remote webservice - Calling remote service using ADF Mobile and I get my weather application working already.
    The webservice returned me a string which is a XML form. I want to parse the XML to make it easy-read.
    The currently output from the webservice (http://www.webservicex.com/globalweather.asmx) is as below.
    *<string><NewDataSet>*
    *<Table>*
    *<Country>Singapore</Country>*
    *<City>Singapore / Paya Lebar</City>*
    *</Table>*
    *<Table>*
    *<Country>Singapore</Country>*
    *<City>Singapore / Changi Airport</City>*
    *</Table>*
    *</NewDataSet></string>*
    How do I parse this output so I can display the string properly in mobile?
    Singapore / Paya Lebar
    Singapore / Changi Airport
    Any direction on how to do this? Or is there any built-in function inside JDeveloper?

    Try to go to this link - http://www.webservicex.com/globalweather.asmx?op=GetCitiesByCountry and use Singapore as CountryName or any country you prefer
    The output is a string
    +<string></string>
    -<string>
    <NewDataSet>
    <Table>
    <Country>Singapore</Country>
    <City>Singapore / Paya Lebar</City>
    </Table>
    <Table>
    <Country>Singapore</Country>
    <City>Singapore / Changi Airport</City>
    </Table>
    </NewDataSet>
    </string>
    The tutorial for ADF Mobile from Oracle website is able to drag the output from data control - return -> value/class. But this webservice only return a single value of string. How do I change it to display properly in ADF Mobile?

  • Unable to load ADF Mobile for Android deployment profile.

    Hello,
    I'm trying to implement a simple application on an android platform using this:
    [http://docs.oracle.com/cd/E18941_01/tutorials/MobileTutorial/jdtut_11r2_54_2.html]
    I already downloaded the updates needed as extensions and started the emulator using the SDK Manager.exe. However, i'm not able to create a deployment profile of type: "ADF Mobile for android". I only find type "ADF Mobile Feature Archive" which doesn't work for me because when i try deploying it, i don't find the "deploy application to emulator" option. Any thoughts?
    Regards,
    Mohamed

    Hi.
    To deploy to the emulator or to a device, you must create a deployment profile on your application, not on the ViewController or ApplicationController projects.
    Best Regards,
    Frédéric.

  • Not able to access SOAP web service data control from adf mobile

    Hi,
    I am trying to call web services from adf mobile..
    I have created data control from external web service and it is perfectlly working on web browser..
    But why it is showing an error on emulator??
    Is there any .jar file missing in adf mobile so that it is not supporting a web service?
    Or is there any other problem? Emulator is connected to network and I am able to run WSDL in emulator's browser..
    Please help me to solve this issue..
    Thanks,
    Laxmi

    Emulator is connected to network and I am able to run WSDL in emulator's browser..
    Connecting to WSDL in the browser is not the same as connecting to WSDL in an application.
    To access a web service from an Android device enable a permission in AndroidManifest.xml that allows applications to open network sockets. Add the following uses-permission element.
    <uses-permission android:name="android.permission.INTERNET"></uses-permission>

Maybe you are looking for