ADF mobile component SelectOneChoice seems disabled on my amx page

Hello experts,

I have a class that loads selectItem table for the SelectOneChoice component.

In my amx page, I set the value selectItems as pageFlowScope.productDefBean.serviceCategorySupplier.selectItemList as below. When I debug application I see getSelectItemList returns the array with elements as expected on my custom ServiceCategorySupplier.

But mobile screen waiting countinously.

"< amx:selectOneChoice value =" #{bindings.selectItemList1.inputValue} "label =" #{bindings.selectItemList1.label} "id ="soc2">

< amx:selectItems value = "#{pageFlowScope.productDefBean.categorySupplier.selectItemList}" id = "si3" / > "

< / amx:selectOneChoice >

If I create DataControl of ServiceCategorySupplier class and use on my page as links, mobile screen is not locked. Component SelectOnceChoice seems this time to the people with reduced mobility. You can see tag amx with this case.

"< amx:selectOneChoice value =" #{bindings.selectItemList1.inputValue} "label =" #{bindings.selectItemList1.label} "id ="soc2">

< amx:selectItems value = "#{bindings.selectItemList1.items}" id = "si3" / > "

< / amx:selectOneChoice >

What could be the problem?

Thank you...

import com.accmee.mobile.pojo.ServiceCategory;

import com.acme.structure.util.datalist.SimpleListSupplier;

import java.util.ArrayList;

to import java.util.Collection;

import java.util.List;

Import javax.el.MethodExpression;

Import oracle.adfmf.framework.api.AdfmfJavaUtilities;

Import oracle.adfmf.framework.api.GenericTypeBeanSerializationHelper;

Import oracle.adfmf.framework.exception.AdfException;

Import oracle.adfmf.javax.faces.model.SelectItem;

Import oracle.adfmf.util.GenericType;

SerializableAttribute public class ServiceCategorySupplier extends SimpleListSupplier

{

public ServiceCategorySupplier (boolean blankItemApplied)

{

Super (blankItemApplied);

}

public ServiceCategorySupplier()

{

Super();

}

Public Sub loadList()

{

Try

{

MethodExpression = me AdfmfJavaUtilities.getMethodExpression ("#{applicationScope.loginBean.loadCategories}", List.class, new class [] {});

List categories = (List) me.invoke (AdfmfJavaUtilities.getAdfELContext (), new Object [] {});

itemList.addAll (getConvertedToSelectItemList (categories, true));

}

catch (System.Exception e)

{

e.printStackTrace ();

throw new AdfException (e.getMessage (), AdfException.ERROR);

}

}

public String getListName()

{

return of the 'categories ';

}

public static Collection getConvertedToSelectItemList (list, boolean blankItemApplied)

{

Collection convertedCollection = new ArrayList();

SelectItem selectItem = null;

If (blankItemApplied)

{

selectItem = new SelectItem();

convertedCollection.add (selectItem);

}

ServiceCategory serviceCategory = null;

for (int i = 0; i < list.size (); i ++)

{

GenericType (GenericType) = list.get (i) serviceCategoryType;

serviceCategory (ServiceCategory) = GenericTypeBeanSerializationHelper.fromGenericType (ServiceCategory.class, serviceCategoryType);

selectItem = getConvertedToSelectItem (serviceCategory);

convertedCollection.add (selectItem);

}

Return convertedCollection;

}

public static getConvertedToSelectItem (superEntity ServiceCategory) SelectItem

{

SelectItem selectItem = new SelectItem();

selectItem.setLabel (superEntity.getName ());

selectItem.setValue (superEntity.getId ());

return selectItem;

}

public SelectItem [] getSelectItemList()

{

SelectItem [] sItemArray = (SelectItem []) getItemList () .toArray (new SelectItem [getItemList () .size ()]);

Return sItemArray;

}

}

public class ServiceCategory

{

whole ID private;

private String name;

description of the private channel;

private parentCategoryID entire;

private childCategoryID whole;

kind of Integer private;

private transient PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport (this);

public ServiceCategory()

{

Super();

}

public void setId (Integer id)

{

Integer oldId = this.id;

This.ID = id;

propertyChangeSupport.firePropertyChange (oldId, "id", id);

}

public void addPropertyChangeListener (PropertyChangeListener l)

{

propertyChangeSupport.addPropertyChangeListener (l);

}

public void removePropertyChangeListener (PropertyChangeListener l)

{

propertyChangeSupport.removePropertyChangeListener (l);

}

public Integer getId()

{

return the id;

}

public void setName (String name)

{

String oldName = myIdName;

myIdName = name;

propertyChangeSupport.firePropertyChange ("name", oldName, name);

}

public String getName()

{

return the name.

}

public void setDescription (description of the chain)

{

OldDescription this.description = string;

This.Description = description;

propertyChangeSupport.firePropertyChange (oldDescription "description", description);

}

public String getDescription()

{

return description;

}

public void setParentCategoryID (Integer parentCategoryID)

{

Integer oldParentCategoryID = this.parentCategoryID;

this.parentCategoryID = parentCategoryID;

propertyChangeSupport.firePropertyChange ("parentCategoryID", oldParentCategoryID, parentCategoryID);

}

public Integer getParentCategoryID()

{

Return parentCategoryID;

}

public void setChildCategoryID (Integer childCategoryID)

{

Integer oldChildCategoryID = this.childCategoryID;

this.childCategoryID = childCategoryID;

propertyChangeSupport.firePropertyChange ("childCategoryID", oldChildCategoryID, childCategoryID);

}

public Integer getChildCategoryID()

{

ChildCategoryID return;

}

public void setSort (kind of integer)

{

Integer oldSort = this.sort;

This.sort = sort;

propertyChangeSupport.firePropertyChange ("Sort", oldSort, sort);

}

public Integer getSort()

{

return of sort;

}

public void setPropertyChangeSupport (PropertyChangeSupport propertyChangeSupport)

{

PropertyChangeSupport oldPropertyChangeSupport = this.propertyChangeSupport;

this.propertyChangeSupport = propertyChangeSupport;

propertyChangeSupport.firePropertyChange ("propertyChangeSupport", oldPropertyChangeSupport, propertyChangeSupport);

}

public PropertyChangeSupport getPropertyChangeSupport()

{

return propertyChangeSupport;

}

}

brgds,

A litle update worked for me.

Code snippet below

Public Sub loadItemList()

{

SelectItem selectItem = null;

itemList = new SelectItem [list.size ()];

ServiceCategory serviceCategory = null;

for (int i = 0; i)<>

{

GenericType (GenericType) = list.get (i) serviceCategoryType;

serviceCategory (ServiceCategory) = GenericTypeBeanSerializationHelper.fromGenericType (ServiceCategory.class, serviceCategoryType);

selectItem = getConvertedToSelectItem (serviceCategory);

itemList [i] = selectItem;

}

}

Tags: Java

Similar Questions

  • ADF Mobile (jdev 11.1.2.4.0) amx:inputNumberSlider

    Hello!

    As shown here hosted demo components ADF Mobile component Gallery

    He values possible for this components do not appear and the selected value. (unlike the adf)

    I was searching through its properties, but I could find anything, any ideas on how to solve this problem?

    Thank you

    Can clarify you your question?

    You want to see the number of the slide currently has?

    I guess that this component does not appear this info on a phone. It my show this if you use a tablet.

    To view the selected value, you can put an outputText somewhere and display the value property of the slider there.

    Timo

  • ADF Mobile: place a phone call with code AMX

    How to place a call from phone with code AMX?    Why isn't when simple ADF Mobile is a development tool for MOBILE PHONES?

    Just use a goLink. Set the parameter to the URL ""such: any number> "."

    Rich.

  • ADF mobile deployment for windows/blackberry-mobile option is disabled

    Hello
    We seek to deploy the sample FOD mobile application on a blackberry Simulator according to the tutorial given at:.
    http://www.Oracle.com/WebFolder/technetwork/tutorials/OBE/jdev/obe11jdev/PS3/adf_mobile_top/adf_mobile/jdtut_11r2_54_1.html

    We had followed all the steps in part 2 and have been able to deploy the application on the BB Simulator and test also.

    After that, we followed the steps in part 3 and now when you try to deploy the mobile client application on the Simulator, the deployment for BB profile option is disabled and this is why we are not able to deploy the application.

    We Jdev 11.1.1.4.0 with mobile client extension installed and also installed the Simulator and BB JDE.
    Can someone please help us get the deployment to BB profile option active again?

    PS: We also tried to install Jdev 11.1.1.4.0 with extension adf mobile on another machine with JDE BB and BB 9700 Simulator, but on this new machine, deployment profile is disabled from the beginning, we are not yet able to deploy the changes that we made to part 2 of this tutorial.

    Kind regards
    Hemant

    Hi, Hemant, just to be sure, have you tried the kickoff of deployment of the project MobileClient, or in the Application menu? Mobile client app must be deployed in the application menu.

    In addition, if you have already deployed, the deployment profile has been created, so you only have to deploy again in the application menu.

    If you see that these items are disabled in some way, then I don't think I've seen it before. Maybe we can set up a web conference to look at.

    Please just ping - me directly.

    Thank you

    Joe Huang ([email protected])

  • Value amx:selectOneChoice ADF Mobile

    Hello!

    I dragged a datacontrol (list < mybean >) return on my amx page

    the WEB service returns a list of objects

    I created the selectonechoice, but as you can see in the picture there is no option to assign the value that will be when the user selects a value in the choice

    right now takes the index (the first item in the list is 0,1,2 and so on)

    I would attribute the id (from my object) as the value of the amx: Selectonechoice

    http://ImageShack.com/a/img801/3977/66m6.PNG

    the Assistant asks only the display not the value attribute

    Hello

    See http://www.oracle.com/technetwork/developer-tools/adf/learnmore/m08-selectmanchoice-selected-values-1940891.pdf

    Frank

  • ADF Mobile: How Fund selectAll feature component &lt; amx:selectManyChoice &gt;.

    Hi all

    I use version 11.1.2.4.0 version jdev.

    I created an amx page where I create component selectmanychoice but problem, it's that there is no option as selectAll who select the option all presented in the list

    so, how I do this?


    any link tutorial


    Thank you

    Manish

    HI Manish,

    I tried something like this in one of my scripts:

    public EditionLov [] getDepartments() {}

    checkBoxUpdate();

    EditionLov d [] = null;

    d = (EditionLov []) s_editions.toArray (EditionLov [s_editions.size ()]) of new;

    return d;

    }

    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------

    Public Sub checkBoxUpdate()

    {

    Object checkAll = AdfmfJavaUtilities.evaluateELExpression("#{pageFlowScope.checkboxSelection}");

    If (checkAll! = null)

    {

    Boolean b = checkAll (Boolean);

    AdfmfJavaUtilities.setELValue ("#{pageFlowScope.checkboxSelection}", null);

    int size = s_editions.size ();

    for (int i = 0; i)< size;="" i++)="">

    try {}

    Edition EditionLov = s_editions.get (i);

    edition.setMark (b.booleanValue ());

    }

    }

    }

    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------

    {} public void selectAllEdition (ValueChangeEvent valueChangeEvent)

    Boolean flag = false;

    Flag = ((Boolean) valueChangeEvent.getNewValue ()). BooleanValue();

    ValueExpression veIter = (ValueExpression) AdfmfJavaUtilities.getValueExpression("#{bindings.departmentsIterator}",Object.class);

    AmxIteratorBinding iteratorBinding = (AmxIteratorBinding) veIter.getValue (AdfmfJavaUtilities.getAdfELContext ());

    AdfmfJavaUtilities.setELValue ("#{pageFlowScope.checkboxSelection}", Boolean.valueOf (flag));

    iteratorBinding.getIterator (.refresh ());

    }

    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------

    Please try this and let me know if it works.

    Kind regards

    Deepak

  • ADF MOBILE: how to add an item in the list without refresh the entire list

    Hello

    I am using this method to add an item to a list (I've already added the item to the data model):


    providerChangeSupport.fireProviderCreate (String providerKey, int newRowKey, object newValue);


    I don't want refresh the entire list, rather, I want to just add a new item to the list, that's why I want to use this method.


    I want to know, what value should I use for the second argument? i.e. 'int newRowKey '.


    Thank you


    Hello

    the event of change of provider in your case seems to actually create a new line. So the int is the rowKey (index PK or line) of the new line. There is no other choice to simply add an element to a list (ADF Mobile provides no component handles)

    See: Embedded Java/ADF for beginners: ADF Mobile: refresh your valuable data

    Frank

  • ADF Mobile - selectManyCheckBox handling

    Hello

    Could someone please give me some advice on how to get the actual value, rather than the index of a selected component selectManyCheckbox in ADF Mobile? I can't seen to find guidance on how to do it. I looked in the attachments e-mail sample code that uses a selectManyCheckbox, but the list is derived from a POJO and mapped to an AmxCollectionModel. This does not seem to work for a list that comes from a Web Service based data control. An error is thrown, but I could not any information useful to the debugger, other that it doesn't seem to be valid to try to use an AmxCollectionModel in this scenario.

    Any help is very appreciated.

    Thanks, Rich.
  • ADF Mobile: Gray background for default springboard

    Use case: users should see a slight contrast between the sliding platform and active functionality located below.

    I am aware of the skin mobilAlta & default css files ADF Mobile uses.  In addition, I created a custom.css & added the extra skin in adfmf_skins.xml (code below).  My research told me that this feature is available for most of the components of the ADF.  Specifically, I can create some custom CSS and assign CSS styles using components of the ADF 'style =' syntax. 


    It remains that I am not able to change the background color of my springboard.   I want the springboard to have light gray contrast as he slips that 170 pixels & screen feature active behind it is white.  Appears white on white.  The UX is not aesthetic.

    Can someone tell me a solution please?  I must be missing something simple.

    Here's what I've done

    in AMX. CSS I changed the springboard by default CSS

    / * - < platform >-* /.

    {.adfmf-panelPage-springboard

    background-color: #c2c7c8;

    }

    in amx-mobileAlta - 1.1.css , I modified the springboard by default CSS

    / * - < platform >-* /.

    {.adfmf-panelPage-springboard

    background-color: #c2c7c8;

    }

    inside the adfmf_skins.xml , I added a skin.

    < skin-added id = "s1" >

    <>skin-id myAST-Mobile < / skin-id >

    < name-sheet-style >custom.css < / name of style sheet >

    < / skin-add >

    in my custom.css

    {.adfmf-springboard

    background-color: #c2c7c8;

    }

    It seems that Oracle has taken my advice and the MAF springboard offers a bit of contrast.  Problem solved at the CRG.

  • ADF Mobile | to view the results in a table


    Hi all

    I use Jdeveloper with ADF Mobile 11.1.2.4.39.64.62 extensions 11.1.2.4

    I must displya quesry results in the form of a table (I'm developing of application for tablets and iPads).

    I don't see any compont to Datacontrols table to remove it as a table on page amx.

    Is it possible that I can display the data in a table in ADF Mobile?

    Help, please.

    Thank you

    Vieira

    Hi Vinay,

    Yes, I understand that the table showing in the window is not the best, but we develop this for the cushions and with highest 7-inch screen tablets.

    I am able to achieve by droping inside the Table list item > row > component cell Format.

    Don't you see the disadvantages of this approach?

    Thank you

    Vieira

  • County of 'badge' or bubble in Oracle ADF Mobile


    Hello

    Can someone give me a sample of strategy of the County 'badge' or bubble in Oracle ADF Mobile?

    Thank you.

    Hello

    For what I can see there is no such thing for mobile of the box (I hope someone will correct me). For now, you will need to implement your own component using css and so on. The link that I sent is the app icon badge (and it's just for iOS). As for example when you receive new messages and shows you the number of new messages in the application icon. If you find something, please let us know.

    Concerning

  • ADF Mobile access protected web service with the user name and password

    With Jdev 11.1.2.4 (with the extension of the ADF Mobile) I am creating a data control that uses a SOAP web service. The web service is not protected by a policy of wss, but its point of endpoint URL is only protected by simple HTTP authentication (internal weblogic server is not accessible public.) We use an Apache server that is configured with a location that is a simple proxypass on url of the web service endpoint weblogic. This apache location apply simple HTTP authorization). I can invoke successfully the methods with parser HTTP by simply adding to the request HTTP header "authorization: xxxxxxxxxxxxxxxxxx base =" (where xxx = user name and encrypted password).

    In the mobile application of ADF, I used the DataControls.dcx-> window to connect to the Web Service change and provided the username and password to the URL of the endpoint. The problem is that after the deployment and execution of this application on the emulator (or the device itself), I get no data by the web service since with the HTTP 401 error http server responses. It seems that that the credentials are not deployed to the device, so while the application is running can not find them.

    I searched a lot and found a similar article (quite old) in the RTO by Frank Nimphius here access_protected_web_services_from_adf.htm

    Is there a way to do this, or if I'm missing the entire image?

    Thank you very much.

    Christos

    Check out blog Shay https://blogs.oracle.com/shay/entry/accessing_secure_web_services_from

    or Andrejus http://andrejusb.blogspot.de/2012/11/adf-mobile-secured-web-service-access.html

    Timo

  • ADF Mobile - function getPicture in iOS

    Hi all

    We use getPicture method in ADF Mobile to take photos in our application. Problem is that the function returns a path of the tmp in the iOS and the photos are deleted once the application has been closed. How do we store pictures permanently? Do we need to copy and save elsewhere when they are stored or is there a better way to do it?

    Any suggestions would be helpful.

    Thank you

    Hello

    This thread on StackOverflow says this is a limitation with Phonegap Get Picture() Cordova, which is used internally by ADF Mobile.

    http://StackOverflow.com/questions/8514560/iOS-PhoneGap-camera-cant-save-image-to-photo-library

    The work around of this thread is to use caprureImage from JavaScript

    navigator.device.capture.captureImage(onSuccess,
      onFail,
       {
      limit: 1
       });
    }

    Unfortunately, this seems to require the support of plugins, which will be added to the next version of ADF Mobile

    Perhaps, as an alternative, try to read the image in the temp directory and try to explicitly write elsewhere. The code is in this chapter for a view and remote file access

    http://docs.Oracle.com/CD/E37975_01/doc.111240/e24475/amxbinding.htm#CHDFDBJG

    Frank

    Post edited by: FrankNimphius

  • Play Google store does not accept the ADF Mobile apps for tablets

    My ADF Mobile app is published on the Google game, but he says that the app is not compatible with the tablets, for the following reasons:

    1. properly target the Android Versions

    I fixed this by going into the properties of the Application > deployment > Android profile > edit > Options Android > change target SDK API level from 9 to 14.

    Note to the ADF Mobile Team: I recommend that you change the default target SDK API level from 9 to a higher level (Google recommends 14 today).

    2. correctly report physical dependencies

    I understand the problem, but I need help to find a good solution.

    The problem is, when ADF Mobile deploys on the package, it creates an AndroidManifest.xml file and since my application uses SMS, it necessarily adds a < permission > element for telephony.  In general, approval will be "implies" that phone is a "requirement of functionality of the material" unless we also add an element of <>uses feature corresponding with android: required = "false".  However, ADF Mobile not set the < uses > function in the AndroidManifest.xml.

    Does anyone know a good solution for this?  (I searched for a way to configure this in ADF Mobile and in the docs, but it found nothing. "And I can't manually change the AndroidManifest.xml because ADF Mobile it creates in the middle of the deployment process).

    3. take advantage of the extra screen available on shelf area

    I have no start troubleshooting this in detail yet, but I'm curious to know how the Google game store, determines exactly?

    Anyway, if anyone can help me with #2, I would be grateful.  Thank you!

    Patrick

    Edit: Title changed this message, because I believe it is a more serious current problem.  Will respond with more information soon.

    Hi, Patrick, recently Google game made a number of changes, so it is much stricter in terms of supported Android.  Successfully, we applied workarounds and found the combination that seems to work for Google play.  Here are the details based on your questions:

    (1) the level of the API should not matter as long as it's 9 or above - 9 is the current default value.  Nothing specific in ADF Mobile that requires the level more high API.  However, if you are interested you should limit your application to 4.x devices, you can set the minimum and target API level accordingly to assert that.

    (2) by default, ADF Mobile says all the permissions of the device which may potentially be required by the framework.  This is why, for example, even if the application accesses a camera, the AndroidManifest.xml file will still contain references to the permissions of the camera.  Possibility to choose the correct hardware permissions selectively is planned for the next version of Mobile of the ADF.  In the meantime, you can change the AndroidManifest.xml file template in an extension of the ADF Mobile as the workaround.

    (3) Google game uses the element of "Supports the screen" in the file AndroidManifest.xml to determine what factors shape/devices are supported.  Summary of form factors supported and densities are described here: supporting multiple screens | Android developers.  ADF Mobile supports the display of different density already.  In what concerns the size of the screen, you must add the element "supports the screen" in the model of manifest file xml for the size of the screen that you want to support.  For example, if you want to add in support of all devices:

    Android: normalScreens = 'true '.

    Android: largeScreens = "true".

    Android: xlargeScreens = "true" / >

    The Android site would give you definitions of what mean these sizes.

    Finally, here are the instructions on changing the template AndroidManifest.xml:

    -Access file /JDeveloper/JDev/Extensions/oracle.adf.mobile/Android/Oracle_ADFmf_Framework.zip

    -Make a backup copy of the zip file

    -Unzip the file, which would be to extract all files in a directory of 'framework '.

    -Navigate to the framework/template/AndroidManifest.template.xml file

    -Use a text editor to change the permissions of the device, as well as the addition of the screen element supports as indicated above.

    -Zip up the framework directory and name the file zip as Oracle_ADFmf_Framework.zip, replacing the old.  Please make sure that the zip file has the same directory structure exactly as before.

    -In JDeveloper, before you deploy the application, please do a "Clean All" to clean up all the old objects deployment.

    -Deploy the application - the application should now be visible for tablets, as well as with adequate permissions.

    -Download the application on Google game - no further action is necessary in the game of Google around form factors supported and the permissions of the device.

    Now the Android deployment process does not additional validation for the device permissions are actually necessary, therefore, to ensure that these are properly defined.

    I'll also cross post this on the blog of the ADF Mobile team.

    Thank you

    Joe Huang

  • ADF mobile user interface design

    Hello

    I am developing a small application using ADF mobile. The main screen is divided into two vertical and left pane shows other tables and right shows a graph.

    Can someone tell me please what layout (formlayout, pagelayout, tableLayout) to use to generate the amx above page.


    presentation of the sample:


    Header 1
    table chart
    Header 1 Header 2
    graph

    Hey shravan.

    I can try and start helping you out or at least give you some options.

    But first, what camera do you mainly be used? A tablet or mobile device? Now, it is important, depending on what device and what components allows you to build the page it can make the left and right different component.

    Separation of the front left and right, you could a component PanelSplitter, but be aware depending on the device you use, it will make differently. that is to say on a Tablet (iPad), it will show the pane on the left and right, but on a mobile phone (cell phone), it allows you to hide the left pane, but has a toggle button that will slide to the right and reveal the left pane. It comes to the expected behavior of the panelSplitter component.

    The panelGroupLayout component that of exactly it, shows the components on the page «»

    The components carefully aligned panelFormLayout similar, i.e. input text fields

    Hope that gives you a starting point

Maybe you are looking for