Ajax auto-suggest with adf
Hi..
I am trying to implement ajax auto-suggest using the example @ http://www.oracle.com/technology/products/jdev/tips/mills/AjaxAutoSuggest/AjaxAutoSuggest.html
After trying it, i realised the auto-suggest component does not work in firefox, but only in IE. Also when using IE 7, the auto-suggest pop up.screen. does not display directly under the textbox.. but rather away from it..unlike what we see in the example.
Is there any other ways to implement autosuggest that work in both firefox and IE using ADF?
thanks
The limitation on browsers is a function of the ajax library used, namely https://blueprints.dev.java.net/bpcatalog/distDrops.html, not ADF. I would suggest finding a similar library that supports the browsers you wish to use.
--RiC
Similar Messages
-
Need to implement auto suggest with multiple select in a input text field
Hi,
Jdev Ver: 11.1.1.4
My requirement is to create an input field where i can provide auto suggest and user can enter multiple email ids. It is similar to current "To" field while composing a mail in Gmail.
Problem:
I have implemented input box with auto suggest. For the first entry it works fine. when i enter 2nd value(i have used ',' (comma) as separator and handled it in 'suggestItems' bean method to take sub-string after comma for providing the suggestion) , after selection.... the first value get lost. So at a time only one value is selected in the input text.
Input text:
<af:inputText label="Names" id="it21" rows="2"
columns="50" simple="true"
valueChangeListener="#{VisitBackingBean.visitMembersInputBoxCL}"
binding="#{VisitBackingBean.visitMembersInputBox}">
<af:autoSuggestBehavior suggestItems="#{VisitBackingBean.onSuggest}"/>
</af:inputText>
Bean Method:
public List onSuggest(FacesContext facesContext,
AutoSuggestUIHints autoSuggestUIHints) {
BindingContext bctx = BindingContext.getCurrent();
BindingContainer bindings = bctx.getCurrentBindingsEntry();
String inputNamevalue = autoSuggestUIHints.getSubmittedValue().trim();
if(inputNamevalue.contains(",")) {
inputNamevalue = inputNamevalue.substring(inputNamevalue.lastIndexOf(",")+1).trim();
//create suggestion list
List<SelectItem> items = new ArrayList<SelectItem>();
// if (autoSuggestUIHints.getSubmittedValue().length() > 3) {
OperationBinding setVariable =
(OperationBinding)bindings.get("setnameSearch");
setVariable.getParamsMap().put("value",
inputNamevalue);
setVariable.execute();
//the data in the suggest list is queried by a tree binding.
JUCtrlHierBinding hierBinding =
(JUCtrlHierBinding)bindings.get("AutoSuggestName_TUserROView1");
//re-query the list based on the new bind variable values
hierBinding.executeQuery();
//The rangeSet, the list of queries entries, is of type //JUCtrlValueBndingRef.
List<JUCtrlValueBindingRef> displayDataList =
hierBinding.getRangeSet();
for (JUCtrlValueBindingRef displayData : displayDataList) {
Row rw = displayData.getRow();
//populate the SelectItem list
items.add(new SelectItem(rw.getAttribute("UsrUserName").toString().trim() +
"<" +
rw.getAttribute("UsrMailId").toString().trim() +
">",
rw.getAttribute("UsrUserName").toString().trim() +
"<" +
rw.getAttribute("UsrMailId").toString().trim() +
">"));
return items;
Please suggest how can i achieve the mentioned functionality.Hi,
doesn't work this way as the suggest list returns a single value. You can actually use the existing values as a prefix to the new value in which case the suggest list would look a bit odd. Beside of this all you can do is to create a user lookup field with auto suggest and once a name is selected, update another field with the value returned from this action
Frank -
Auto Suggest with multiple fields?
Hello,
I am planning on using the autosuggest on a project I'm
working on, and was surprised by the lack of support for multiple
fields. Correct me if I'm wrong, but right now you can only search
for the 'name' field or 'age' etc. I would like to be able to enter
some text in the textinput field, and it would search both 'name'
and 'username' in the dataset. Is this possible with the current
widget?
Thanks,
MaquellyHello Maquelly,
Indeed the Auto Suggest widget do not support filtering the
data against multiple fields simultaneously if the data is filtered
on the client side. I will add this as an enhancement request for
this brand new widget. We have only support for multiple fields to
be displayed in the suggestion list which is a spry:region, you can
insert the values of multiple fields concatenated through the
spryLsuggest tag buy we are not able to check multiple fields,
We have implemented also the ability to send the value typed
on the server and expect a new XML with the filtered data. This
method allow you to achieve your goak as you can control
completelly the filtering algorithm that sends the data back in
browser. We have some samples in the Spry 1.5 preview.
Regards,
Cristian MARIN -
Hi,
I tried to create an application from tutorial and it seem to be working fine. However, when I add Textfield.jar to my existing application, my application stop working. When I am trying to access any page, it throws an error page not found on the browser, and no exception in the server log (inside JDev). When this jar is removed (jdev restarted) my application is working again. What could be the problem?
Thanks,
MikeThanks for your reply. I just want to make sure I understand for you are saying. Do I have to build this component myself or is there particular part that will solve my problem?
-
Auto Suggest Special characters
Hi!
I would like to known if you can use the Auto suggest widget
from the Spry framework with special character typed in the text
box.
In JSONDataSet with loadFromServer:true contains information
with special characters and spry:region appear correctly, but when
i type "Etc fóo" the spry url is ...?parameter=Etc%20f%C3%B3o
but server side value of parameter=Etc fóo,
when i send form url ?parameter=Etc+f%F3o server side value
of parameter is Etc fóo.
I try with charset ISO-8859-1, UTF-8 and i can´t fix
this.
The same error when i type "É" spry url
...?parameter=%C3%89 and server side value of parameter is Ã?,
when i sent form url is ..?parameter=%C9 and i´ts works,
server side is É
Version Spry_1_6_1_022408
same problem
Auto
suggest with special characters
Changes for Spry 1.6.1 - 2008/02/23
Auto Suggest
Fixed a bug for dynamic URL loading where some special
characters like + and & where not sent correctly to the server.
Fixed a bug with suggestion list showing when pressing some
special charactersHello,
I must admit that we didn't include into our test matrix such
a scenario so I don't know the answer. However I would like to
clear me a question before starting the investigation.
Do you mean that if you type the 'a' character the widget
should display the values that also starts with "â" or
"à" ? Because this scenario is really not supported.
Cristian -
LOV with auto suggest and multiple check boxes
Is it possible to implement LOV with auto suggest and multiple check boxes using ADF faces components?. Any alternative implementation/pointers are appreciated.
Regards,
SuryaHi,
build it yourself as a task flow opened in a popup. see: http://www.oracle.com/technetwork/developer-tools/adf/learnmore/69-custom-lov-with-btf-276178.pdf
Frank -
Anybody can suggest quick sample 'Hello World' with ADF/JSF to deploy on WC
We are using JDeveloper 11g, and Web Center 10.1.3.2.
We have Oracle Portals 10.1.2.0.2
We want to develop a portlet and deploy it to WC 10.1.3.2 to use it in Portals 10.1.2.0.2.
Could anybody suggest any working "Hello World' sample with ADF/JSF to deploy on WC 10.1.3.2 WSRP.
TIAJust to clarify. Oracle Portal 10.12.0.2 did not support WSRP based portlets (this was introduced in 10.1.4 or Portal) as such you would need to develop a JPDK based portlet in order to use it in both Portal 10.1.2.0.2 and WebCenter. If you upgrade the portal to 10.1.4 you will be able to use a WSRP 1.0 based portlet in both products (WebCenter also supports the draft WSRP2.0 extensions so make sure that you register the correct WSDL file)
If you are trying to use JSF components within the Portlet itself you will need to use the JSF Portlet Bridge which accounts for the differences in lifecycle between JSF and WSRP. -
How to create Auto suggestion component by using of ADF tag
Hi ,
In my project, I am using the ADF frame work and I need to use the auto suggestion component.
Can any body suggest me how to create Auto suggestion component by using of ADF tag.
Waiting for your valuable suggestions...Try this forum:
JDeveloper and ADF
You might get a lot more response.
Jan Kettenis -
AJAX Integration with ADF Components
Please help me integrate AJAX with ADf Components
Thanks in advance
A sample code would be useful.Hi,
Hope these links can help you
http://www.oracle.com/technology/pub/articles/cioroianu-ajax-data.html
http://www.oracle.com/technology/pub/articles/vohra-ajax.html
http://www.oracle.com/technology/pub/articles/nimphius-ajax.html
http://www.oracle.com/technology/products/jdev/tips/mills/AjaxAutoSuggest/AjaxAutoSuggest.html
EronYang -
Implement auto suggest behaviour with af:selectOneChoise
Hi
I'm using jdeveloper 11.1.2.3.0
I would like to know how could I Implement auto suggest behaviour with af:selectOneChoise?Hi,
Drop a af:autoSuggestBehavior from component pallet to the SOC component and bind it to a backing bean method as below
private List<SelectItem> items = new ArrayList<SelectItem>();
public List getSuggestions(String input) {
if (input!=null && input.length()>3) {
ViewObject vo = util.getViewObject("XYZ1Iterator");
vo.setNamedWhereClauseParam("bindx]Xyz", input);
vo.executeQuery();
System.out.println("Row count is " + vo.getRowCount());
// autoSuggestItemBeanList.clear();
RowSetIterator itr = vo.createRowSetIterator(null);
while (itr.hasNext()) {
Row row = itr.next();
items.add(new SelectItem(row.getAttribute("FirstName")));
return items;
If you don't want your db to be queried for each and every character, then create a bean and set each and every attribute value of that bean from the db after your page gets rendered. So each character hit from the keyboard will look into your bean rather than hitting the db.
Thanks,
Sanjeeb -
Creating new Auto-Suggest Component
Hi,
I am new to ADF and looking for Auto-Suggest options. Found Franks code and it was really heplful.
We tried to create a new component based on this but not able to use multiple components of the type on the same page/form.The problem we are thinking of is because of the popup having the same id for all the components we embed in.If we attach 3 components of this type to a form then one of the random ones work as per logic and other 2 not doing any pop ups at all.
Could you please help us to resolve this please?
Thanks
Subha
CODE
suggestComponentModel.java
package com.dstintl.ic.ui.component.suggestbox;
import java.util.List;
public interface SuggestComponentModel{
* Method called to filter data shown in the suggest list. Initial
* request is made with inMemory = false. If in memory sorting is
* enabled then all subsequent calls are made passing trues as the
* value for the inMemory parameter. Implementations may decid to
* ignore the inMemory argument and always query the data source.
public List<String> filteredValues(String filterCriteria,
boolean inMemory);
SuggestBoxTag.java+
package com.dstintl.ic.ui.component.suggestbox;
import javax.el.ValueExpression;
import oracle.adf.view.rich.component.rich.fragment.RichDeclarativeComponent;
import oracle.adfinternal.view.faces.taglib.region.RichDeclarativeComponentTag;
import org.apache.myfaces.trinidad.bean.FacesBean;
* ICDateComponent tag class.
public class SuggestBoxTag extends RichDeclarativeComponentTag {
/*input text properties*/
private ValueExpression styleClass;
private ValueExpression label;
private ValueExpression required;
private ValueExpression displayWidth;
private ValueExpression maximumLength;
private ValueExpression tooltip;
private ValueExpression disabled;
/*popup properties*/
private ValueExpression itemList;
* {@inheritDoc}
@Override
protected String getViewId() {
return "/component/SuggestBox.jspx";
* {@inheritDoc}
@Override
protected RichDeclarativeComponent createComponent() {
return new SuggestBox();
* {@inheritDoc}
@Override
public void release() {
super.release();
label = null;
* {@inheritDoc}
@Override
protected void setProperties(final FacesBean bean) {
super.setProperties(bean);
/*Input text box properties*/
if (label != null) {
bean.setValueExpression(SuggestBox.LABEL_KEY, label);
if (styleClass != null) {
bean.setValueExpression(SuggestBox.STYLE_CLASS_KEY, styleClass);
if (required != null) {
bean.setValueExpression(SuggestBox.REQUIRED_KEY, required);
if (displayWidth != null) {
bean.setValueExpression(SuggestBox.DISPLAY_WIDTH_KEY, displayWidth);
if (maximumLength != null) {
bean.setValueExpression(SuggestBox.MAXIMUM_LENGTH_KEY, maximumLength);
if (tooltip != null) {
bean.setValueExpression(SuggestBox.TOOLTIP_KEY, tooltip);
if (disabled != null) {
bean.setValueExpression(SuggestBox.DISABLED_KEY, disabled);
if (itemList != null) {
bean.setValueExpression(SuggestBox.POPUP_SELECTITEMLIST_KEY, itemList);
* @return label
public ValueExpression getLabel() {
return label;
* @param label
* label
public void setLabel(ValueExpression label) {
this.label = label;
* @return style class.
public ValueExpression getStyleClass() {
return styleClass;
* @param styleClass
* style class.
public void setStyleClass(ValueExpression styleClass) {
this.styleClass = styleClass;
* @param required
* required.
public void setrequired(ValueExpression required) {
this.required = required;
* @return required .
public ValueExpression getrequired() {
return required;
* @param displayWidth
* displayWidth.
public void setDisplayWidth(ValueExpression displayWidth) {
this.displayWidth = displayWidth;
* @return displayWidth .
public ValueExpression getDisplayWidth() {
return displayWidth;
* @param maximumLength
* maximumLength.
public void setmaximumLength(ValueExpression maximumLength) {
this.maximumLength = maximumLength;
* @return maximumLength .
public ValueExpression getmaximumLength() {
return maximumLength;
* @param tooltip
* tooltip.
public void setTooltip(ValueExpression tooltip) {
this.tooltip = tooltip;
* @return tooltip .
public ValueExpression getTooltip() {
return tooltip;
* @param disabled
* disabled.
public void setDisabled(ValueExpression disabled) {
this.disabled = disabled;
* @return disabled .
public ValueExpression getDisabled() {
return disabled;
* @param itemList
* itemList.
public void setItemList(ValueExpression itemList) {
this.itemList = itemList;
* @return itemList .
public ValueExpression getItemList() {
return itemList;
SuggestBox.java+
package com.dstintl.ic.ui.component.suggestbox;
import java.util.ArrayList;
import java.util.List;
import javax.faces.component.UIComponent;
import javax.faces.model.SelectItem;
import oracle.adf.view.rich.component.rich.fragment.RichDeclarativeComponent;
import oracle.adf.view.rich.component.rich.input.RichSelectOneListbox;
import oracle.adf.view.rich.context.AdfFacesContext;
import oracle.adf.view.rich.render.ClientEvent;
import org.apache.myfaces.trinidad.bean.PropertyKey;
* suggestBox.
public class SuggestBox extends RichDeclarativeComponent {
/** label. **/
public static final PropertyKey LABEL_KEY = PropertyKey.createPropertyKey("label");
/** styleClass **/
public static final PropertyKey STYLE_CLASS_KEY = PropertyKey.createPropertyKey("styleClass");
/** required **/
public static final PropertyKey REQUIRED_KEY = PropertyKey.createPropertyKey("required");
/** displayWidth **/
public static final PropertyKey DISPLAY_WIDTH_KEY = PropertyKey.createPropertyKey("displayWidth");
/** precision **/
public static final PropertyKey MAXIMUM_LENGTH_KEY = PropertyKey.createPropertyKey("maximumLength");
/** toolTip **/
public static final PropertyKey TOOLTIP_KEY = PropertyKey.createPropertyKey("tooltip");
/**disabled **/
public static final PropertyKey DISABLED_KEY = PropertyKey.createPropertyKey("disabled");
/** itemList **/
public static final PropertyKey POPUP_SELECTITEMLIST_KEY = PropertyKey.createPropertyKey("itemList");
* Constructor.
public SuggestBox() {
* Gets the value set to the <code>label</code> attribute.
* @return String label.
public String getLabel() {
String t = (String) getAttributes().get("label");
return t;
* Gets the value set to the <code>styleClass</code> attribute.
* @return String styleClass.
public String getStyleClass() {
String t = (String) getAttributes().get("styleClass");
return t;
* Gets the value set to the <code>required</code> attribute.
* @return b.
public boolean getrequired() {
Boolean b = (Boolean) getAttributes().get("required");
return b;
* Gets the value set to the <code>displayWidth</code> attribute.
* @return String displayWidth.
public String getDisplayWidth() {
String t = (String) getAttributes().get("displayWidth");
return t;
* Gets the value set to the <code>precision</code> attribute.
* @return String precision.
public String getMaximumLength() {
String t = (String) getAttributes().get("maximumLength");
return t;
* Gets the value set to the <code>toolTip</code> attribute.
* @return String styleClass.
public String getToolTip() {
String t = (String) getAttributes().get("tooltip");
return t;
* Gets the value set to the <code>disabled</code> attribute.
* @return b.
public boolean getDisabled() {
Boolean b = (Boolean) getAttributes().get("disabled");
return b;
* Main popUp functionality.
/**Get popUpId label */
private String popUpLabel;
public void setPopUpLabel(String popUpLabel) {
this.popUpLabel = popUpLabel;
public String getPopUpLabel() {
this.popUpLabel =(String) getAttributes().get("label");
return popUpLabel;
/** fullitemList from the binding **/
private List<SelectItem> fullitemList;
/** suggestedList - to populate list of suggestions squeezed from the fullitemList **/
private List<SelectItem> suggestedList = new ArrayList<SelectItem>();
/** suggestListBox - attached to the Main popUp RichSelectOneListbox**/
private RichSelectOneListbox suggestListBox;
* sets suggestListBox
public void setSuggestListBox(RichSelectOneListbox suggestListBox) {
this.suggestListBox = suggestListBox;
* gets suggestListBox
* @return suggestListBox
public RichSelectOneListbox getSuggestListBox() {
return suggestListBox;
* Sets suggested list on the selectOneListbox component
* @param suggestedList
* suggestedList.
public void setSuggestedList(List<SelectItem> suggestedList) {
this.suggestedList = suggestedList;
* Retrieves the list from the bindings and
* initialise suggestedList with the full list(only done during initialisation)
* @return suggestedList.
public List<SelectItem> getSuggestedList() {
if(fullitemList == null){
fullitemList = new ArrayList<SelectItem>();
List<SelectItem> result = (List<SelectItem>) getAttributes().get("itemList");
this.fullitemList.addAll(result);
this.suggestedList.addAll(result);
return suggestedList;
* doFilterList - On Every user keystroke in the suggest input field, the browser client calls
* the doFilterList method through the af:serverListerner component
* af:selectoneListbox (popup) is refreshed at the end of each call to the doFileterList so that
* new list value is populated.
* @param clientEvent
public void doFilterList(ClientEvent clientEvent) {
if(suggestListBox == null) {
UIComponent uic = clientEvent.getComponent();
suggestListBox = (RichSelectOneListbox) uic.getChildren().get(0);
// set the content for the suggest list
String srchString = (String)clientEvent.getParameters().get("filterString");
this.suggestedList.clear();
for(SelectItem item : fullitemList) {
if( item.getLabel().contains(srchString)){
this.suggestedList.add(item);
AdfFacesContext.getCurrentInstance().addPartialTarget(suggestListBox);
SuggestBox.jspx+
<?xml version='1.0' encoding='windows-1252'?>
<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=windows-1252" />
<af:componentDef var="attrs" componentVar="component">
<af:document>
<f:facet name="metaContainer">
<af:group>
<![CDATA[
<script>
function handleKeyUpOnSuggestField(evt){
// start the popup aligned to the component that launched it
suggestPopup = evt.getSource().findComponent("suggestPopup");
inputField = evt.getSource();
//don't open when user "tabs" into field
if (suggestPopup.isShowing() == false &&
evt.getKeyCode()!= AdfKeyStroke.TAB_KEY){
hints = {align:AdfRichPopup.ALIGN_AFTER_START, alignId:evt.getSource().getClientId()+"::content"};
suggestPopup.show(hints);
//disable popup hide to avoid popup to flicker on
//key press
suggestPopup.hide = function(){}
//suppress server access for the following keys
//for better performance
if (evt.getKeyCode() == AdfKeyStroke.ARROWLEFT_KEY ||
evt.getKeyCode() == AdfKeyStroke.ARROWRIGHT_KEY ||
evt.getKeyCode() == AdfKeyStroke.ARROWDOWN_KEY ||
evt.getKeyCode() == AdfKeyStroke.SHIFT_MASK ||
evt.getKeyCode() == AdfKeyStroke.END_KEY ||
evt.getKeyCode() == AdfKeyStroke.ALT_KEY ||
evt.getKeyCode() == AdfKeyStroke.HOME_KEY) {
return false;
if (evt.getKeyCode() == AdfKeyStroke.ESC_KEY){
hidePopup(evt);
return false;
// get the user typed values
valueStr = inputField.getSubmittedValue();
// query suggest list on the server
AdfCustomEvent.queue(suggestPopup,"suggestServerListener",
// Send single parameter
{filterString:valueStr},true);
// put focus back to the input text field
setTimeout("inputField.focus();",400);
//TAB and ARROW DOWN keys navigate to the suggest popup
//we need to handle this in the key down event as otherwise
//the TAB doesn't work
function handleKeyDownOnSuggestField(evt){
if (evt.getKeyCode() == AdfKeyStroke.ARROWDOWN_KEY) {
selectList = evt.getSource().findComponent("suggestListBox");
selectList.focus();
return false;
else{
return false;
//method called when pressing a key or a mouse button
//on the list
function handleListSelection(evt){
if(evt.getKeyCode() == AdfKeyStroke.ENTER_KEY ||
evt.getType() == AdfUIInputEvent.CLICK_EVENT_TYPE){
var list = evt.getSource();
evt.cancel();
var listValue = list.getProperty("value");
hidePopup(evt);
inputField = evt.getSource().findComponent("suggestField");
inputField.setValue(listValue);
//cancel dialog
else if (evt.getKeyCode() == AdfKeyStroke.ESC_KEY){
hidePopup(evt);
//function that re-implements the node functionality for the
//popup to then call it
function hidePopup(evt){
var suggestPopup = evt.getSource().findComponent("suggestPopup");
//re-implement close functionality
suggestPopup.hide = AdfRichPopup.prototype.hide;
suggestPopup.hide();
</script>
]]>
</af:group>
</f:facet>
<af:messages/>
</af:document>
<!-- START Suggest Field -->
<af:inputText id="suggestField"
clientComponent="true"
disabled="#{attrs.disabled}"
label="#{attrs.label}"
required="#{attrs.required}"
columns="#{attrs.displayWidth}"
maximumLength="#{attrs.maximumLength}"
styleClass="#{attrs.styleClass}"
shortDesc="#{attrs.tooltip}">
<af:clientListener method="handleKeyUpOnSuggestField"
type="keyUp"/>
<af:clientListener method="handleKeyDownOnSuggestField"
type="keyDown"/>
</af:inputText>
<!-- END Suggest Field -->
<!-- START Suggest popUp -->
<af:popup id="suggestPopup" contentDelivery="immediate" animate="false" clientComponent="true" >
<af:selectOneListbox id="suggestListBox" contentStyle="width: 250px;"
size="5" valuePassThru="true">
<f:selectItems value="#{component.suggestedList}"/>
<af:clientListener method="handleListSelection" type="keyUp"/>
<af:clientListener method="handleListSelection" type="click"/>
</af:selectOneListbox>
<af:serverListener type="suggestServerListener"
method="#{component.doFilterList}"/>
</af:popup>
<!-- END Suggest popUp -->
<af:xmlContent>
<component xmlns="http://xmlns.oracle.com/adf/faces/rich/component">
<display-name>suggestBox</display-name>
<attribute>
<attribute-name>id</attribute-name>
</attribute>
<attribute>
<attribute-name>label</attribute-name>
</attribute>
<component-extension>
<component-tag-namespace>com.dstintl.ic.ui.component</component-tag-namespace>
<component-taglib-uri>/com/dstintl/ic/ui/component</component-taglib-uri>
</component-extension>
</component>
</af:xmlContent>
</af:componentDef>
</jsp:root>
component.tld+
<?xml version="1.0" encoding="windows-1252"?>
<taglib xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd" version="2.1" xmlns="http://java.sun.com/xml/ns/javaee">
<display-name>component</display-name>
<tlib-version>1.0</tlib-version>
<short-name>component</short-name>
<uri>/com/dstintl/ic/ui/component</uri>
<!--
Component Name: SuggestBox Description: AutoSuggest or AutoComplete - shows a list of vales
in a drop down list that is filtered by the user input in the input text field.
-->
<tag>
<name>SuggestBox</name>
<tag-class>com.dstintl.ic.ui.component.suggestbox.SuggestBoxTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<name>label</name>
<required>false</required>
<deferred-value/>
</attribute>
<attribute>
<name>styleClass</name>
<required>false</required>
<deferred-value/>
</attribute>
<attribute>
<name>disabled</name>
<required>false</required>
<deferred-value/>
</attribute>
<attribute>
<name>required</name>
<required>false</required>
<deferred-value>
<type>boolean</type>
</deferred-value>
</attribute>
<attribute>
<name>displayWidth</name>
<required>false</required>
<deferred-value/>
</attribute>
<attribute>
<name>maximumLength</name>
<required>false</required>
<deferred-value/>
</attribute>
<attribute>
<name>tooltip</name>
<required>false</required>
<deferred-value/>
</attribute>
<attribute>
<name>itemList</name>
<required>false</required>
<deferred-value/>
</attribute>
</tag>
</taglib>Hi Subha,
you can distinct the different components using clientAttribute tag with clientListener
<af:inputText id="suggestField" .....>
<af:clientListener method="handleKeyUpOnSuggestField" type="keyUp"/>
<af:clientListener ......"/>
<af:*clientAttribute* name="eventName" value="myCustomEvent"/>
<af:*clientAttribute* name="popupId" value="......"/>
</af:inputText>
in javascript you get the eventName or PopuId from the attribute
component = event.getSource();
var eventName = component.*getProperty* ("eventName");
// Call the server
AdfCustomEvent.queue(popup, *eventName*, ......);
var popupId = component.*getProperty* ("popuId");
var popup = AdfPage.PAGE.findComponent(popupId);
Hope this help,
Maroun -
Auto suggest behavior for af:query component LOV fields.
Hi,
I am new to ADF development and need help on implementing auto suggest behavior to the LOV fields generated by af:query component. For inputList and inputCombo.. fields we can add af:autosuggestbehavior tag to enable this. How do we enable the same for af:query generated LOV fields.
Regards,
C.RThanks Timo for such a quick response.
JDev version we are using is 11.1.1.6.0
Unfortunately, we have gone too far with the AF:Query and Everything else is working apart from Auto-Suggest on AF:Query. Now will take a lot of time to implement and test. Also, users will have to spend considerable time to test it again.
Thanks and Regards,
Satya -
Hello,
I am new to JSF and I am starting with JSF 2.0 + Facelets. I need to implement ajax auto refresh (I need some part of my page to refresh every 3 seconds), I guess using f:ajax. I don't know if it is possible and if I should use any approach different from straighforward and simple f:ajax tag.
Thanks for any help/directions,
IgnacioHi harry5,
According to your description, my understanding is that you want to switch the view of the custom list when one field is changed. Is it right?
I suggest you use InfoPath to achieve it. You can customize the custom list with InfoPath by clicking ‘Customize Form’, then create multiple views for the form based on your requirement. After that, click Data->Form Load, then click rules based on the
values of the status field to switch views.
More information, please refer to the last section of the article:
http://office.microsoft.com/en-001/infopath-help/add-delete-and-switch-views-pages-in-a-form-HA101732801.aspx
I hope this helps.
Thanks,
Wendy
Forum Support
Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
[email protected]
Wendy Li
TechNet Community Support -
Error implementing Auto Suggest Behaviour (JDeveloper Tutorial)
Hi,
I'm using JDev 11g R2 on Mac OSX. In the JDeveloper Tutorial "Developing Rich Web Applications with Oracle ADF", Part 3, Step 3, I don't get the "Insert Auto Suggest Behavior dialog box", so I used the property inspector to enter "#{bindings.JobId.suggestedItems}" in the "SuggestedItems" property.
When I run the application, and type a value in the JobId, I get the error:
suggestedItems="#{bindings.JobId.suggestedItems}": Method not found: 0.suggestedItems(java.lang.String)
I checked the bindings in "query.jsf", and they're all set.
Does anyone have an idea what could be wrong?
Kind regards,
PhilipThe tutorial (http://docs.oracle.com/cd/E18941_01/tutorials/jdtut_11r2_55/jdtut_11r2_55_3.html) suggests that you can drag and drop the auto suggest behavior onto the JobId. But you cannot.
By default, the JobId item is not created as an element that can accept an auto suggest behavior. The source for the item should resemble:
<af:inputComboboxListOfValues id="jobId1Id"
popupTitle="Search and Select: #{bindings.JobId1.hints.label}"
value="#{bindings.JobId1.inputValue}"
label="#{bindings.JobId1.hints.label}"
model="#{bindings.JobId1.listOfValuesModel}"
required="#{bindings.JobId1.hints.mandatory}"
columns="#{bindings.JobId1.hints.displayWidth}"
shortDesc="#{bindings.JobId1.hints.tooltip}">
<f:validator binding="#{bindings.JobId1.validator}"/>
<af:autoSuggestBehavior suggestedItems="#{bindings.JobId1.suggestedItems}"/>
</af:inputComboboxListOfValues>However, when the form itself is dropped onto the page, the JobId is created as a selectOneChoice.
This seems to be an error with the tutorial (http://docs.oracle.com/cd/E18941_01/tutorials/jdtut_11r2_55/jdtut_11r2_55_2.html).
Edited by: Dolphin on Sep 29, 2012 2:37 PM -
Help required with ADFS 3.0 client certificate authentication
Hi,
I am currently working on integrating ADFS 3.o for Single Sign On to some 3rd party services along with PKI solution. The basic requirement is that I should be able to choose client authentication certificate as an authentication method in ADFS and then
federate user credentials to 3rd party trust for single-sign-on.
I had done this successfully with ADFS 2.0 and that setup is working fine. I have the setup as ADFS 3.0 client authentication method enabled. When I open browser to logon, the ADFS 3.0 page displays a message as "Select a certificate that you want to
use for authentication. If you cancel the operation, please close your browser and try again." but the certificates are not displayed for selection.
The certificates are valid and have valid chaining to CA. Could someone help me resolve this issue?
Thanks!
-Chinmaya KarveHi Yan,
Thanks for your response. I have gone through the posts that you have suggested, and my setup looks pretty much as expected.
So, as I mentioned earlier, I have 2 parallel setups with 3rd party service(SalesForce). Once of them is running ADFS 2.0 and another one has ADFS 3.0. I can logon to the third-party services, from both the setups using username/format. I can logon to SF
using client authentication certificate from ADFS 2.0 setup, but from the same client machine, when I try to logon SF via ADFS 3.0, the browser just does not pick up any certificate. The page just shows message of "Select a certificate that you want to use
for authentication. If you cancel the operation, please close your browser and try again.".
I have checked the browser, and it has the right certificates. Also, the same browser/machine is used to logon to SF through ADFS 2.0 via client certificate, which works just fine !
I am really confused now, as to whose issue this really is...
Just to confirm, I am using Certificate Authentication from ADFS 3.0 Authentication Methods for both Intranet and Extranet.
Any suggestion or inputs where I could have gone wrong in the setup?
Thanks!
Maybe you are looking for
-
Not able to post material in MB1C. Please help with proper answer.
Hi I am posting material in IDES thru MB1C, since i am not allowed to do PGI if i dont do a stock upload. While doing MB1C error is below "MB1C=Period 003/2008 is not open for account type S and G/L 799999." I used the below transaction and written
-
Trouble capturing footage to final cut express
hey this is quite urgent.... i am trying to upload footage to final cut express from my sony DCR-HC52E. it sais VTR OK and plays and pauses and stuff but i cannot see anything it just stayed on those coloured bars. i can see it playing on the camera
-
I get itunes can't find file when I tried to play a TV show I had purchased. I then checked and had this problem with an entire TV season I had purchesed. The shows were supposed to be in the cloud. I went to the itunes store, went to the tv shows an
-
Hi. I recently bought four Metallica albums (Ride the Lightning, Master of Puppets, ...And Justice for All, and Metallica). All four came with the digital booklets. At the time I bought these albums I still had an older version of iTunes (9 or someth
-
Please help, I have tried two DVDr's now and the same problem. I have put together a dvd with slideshows created in idvd, added music from itunes to the 4 chapters, plus the main title screen. The project info is as follows. 3.8mb of 4.7, so there is