ADF BC + ADF Faces 10.1.3.3: Ajax with ADF.
Hi Comunity
I developed a ADF Faces page with AJAX funcionality, im not using others frameworks like icefaces or richfaces i develop the ajax code by my self. I try to add dinamic html tags in a table incrementing row by row, when i combined a div with a binding value like id#{status.index} the finaly results is the same the value not printed in the page.
Any sugestions.¿?.
Hi Peter
I had the same problem a few weeks ago.
The limitation is that JSF 1.1 does not allow the mix and match of HTML and JSf components. I found the solution using af:script to print html tag combined with #{status.index} value like this:
<afh:script id="script1" generatesContent="true" text="document.write('<p id=id#{status.index}>...</p>');"/>
I works great for me.
Good Luck.
Similar Messages
-
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 -
Portlets with ADF faces does not work
Hello
I am trying to portlize an hello world ADF application but am unable to do so because of the situation describe below. I have tried all the options given on this post but nothing seems to resolve the issue.
I have followed the instructions of portelizing at http://download-east.oracle.com/otndocs/tech/webcenter/files/owcs_10132_bridge_viewlet.html
A simple portlets without AFD works fine in oc4h or webcenter or jboss, but when I include ADF in the project then none of the application server or the container works
I am using jdeveloper 10.1.3.2.0 and the embedded webcenter oc4j for this test
I have two projects
1) ui where the ADF appplication is and
2) test1 where the producer is registered and is tested
In ui I have a simple jsp page untitled1.jsp with just one adf component (ADF Command Link)
Here is the source of untitled1.jsp
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/portlet" prefix="adfp"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces" prefix="af"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/customizable" prefix="cust"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/html" prefix="afh"%>
<f:view>
<afh:html binding="#{backing_untitled1.html1}" id="html1">
<afh:head title="Pixel Home" binding="#{backing_untitled1.head1}"
id="head1">
<meta http-equiv="Content-Type"
content="text/html; charset=windows-1252"/>
<style type="text/css">
body {
background-color: #ffffff;
a:link { color: #2121ff; }
</style>
</afh:head>
<afh:body binding="#{backing_untitled1.body1}" id="body1">
<h:form binding="#{backing_untitled1.form1}" id="form1">
<af:commandLink text="commandLink 1"
binding="#{backing_untitled1.commandLink1}"
id="commandLink1"/>
</h:form>
</afh:body>
</afh:html>
</f:view>
After deploying this in webcenter I can see the WSDL page
http://localhost:6688/AdfFacesDemo1/portlets/wsrp1?WSDL
<?xml version = '1.0' encoding = 'UTF-8'?>
<wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:bind="urn:oasis:names:tc:wsrp:v1:bind" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:oasis:names:tc:wsrp:v1:wsdl">
<import namespace="urn:oasis:names:tc:wsrp:v1:bind" location="wsrp_v1_bindings.wsdl"/>
<wsdl:service name="WSRP_v1_Service">
<wsdl:port binding="bind:WSRP_v1_Markup_Binding_SOAP" name="WSRPBaseService">
<soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPBaseService"/>
</wsdl:port>
<wsdl:port binding="bind:WSRP_v1_ServiceDescription_Binding_SOAP" name="WSRPServiceDescriptionService">
<soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPServiceDescriptionService"/>
</wsdl:port>
<wsdl:port binding="bind:WSRP_v1_Registration_Binding_SOAP" name="WSRPRegistrationService">
<soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPRegistrationService"/>
</wsdl:port>
<wsdl:port binding="bind:WSRP_v1_PortletManagement_Binding_SOAP" name="WSRPPortletManagementService">
<soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPPortletManagementService"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
In test1 project I have a simple jsp page test1.jsp and here is the source
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/portlet" prefix="adfp"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces" prefix="af"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/customizable" prefix="cust"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/html" prefix="afh"%>
<f:view>
<afh:html binding="#{backing_test1.html1}" id="html1">
<afh:head title="Pixel Home" binding="#{backing_test1.head1}" id="head1">
<meta http-equiv="Content-Type"
content="text/html; charset=windows-1252"/>
<style type="text/css">
body {
background-color: #ffffff;
a:link { color: #2121ff; }
</style>
</afh:head>
<afh:body binding="#{backing_test1.body1}" id="body1">
<h:form binding="#{backing_test1.form1}" id="form1">
<adfp:portlet value="#{bindings.ADFFacesDemoPortlet11_1}"
portletType="/oracle/adf/portlet/AdfFacesDemoProducer_1186417722625/ap/E0default_3c036e4c_0114_1000_8003_83e15f750fa7"
id="portlet1" binding="#{backing_test1.portlet1}"/>
</h:form>
</afh:body>
</afh:html>
</f:view>
<%-- oracle-jdev-comment:auto-binding-backing-bean-name:backing_test1--%>
I have already registered a producer called[b] ADFFacesDemoProducer in test1 project with 300 sec as timeout. Now when I run the test1.jsp page in oc4j container I get the following error. I have tried all the options in this forum and nothing worked.
Target URL -- http://131.225.95.117:8988/PortletTest6-test1-context-root/faces/test1.jsp
07/08/06 11:31:04 Oracle Containers for J2EE 10g (10.1.3.1.1) initialized
Warning : Not able to reserve 2048M memory for the heap. Heap reduced to 890M
Aug 6, 2007 11:31:17 AM oracle.adf.share.config.ADFConfigFactory findOrCreateADFConfig
INFO: oracle.adf.share.config.ADFConfigFactory Reading META-INF/adf-config.xml
07/08/06 11:31:18 PortletContainer portletTechnologies set to '{oracle.portlet.client.containerimpl.web.WebPortletTechnologyConfig,oracle.portlet.client.containerimpl.wsrp.WSRPPortletTechnologyConfig}' from adf-config.xml
07/08/06 11:31:18 PortletContainer defaultTimeout set to '20' from adf-config.xml
07/08/06 11:31:18 PortletContainer minimumTimeout set to '1' from adf-config.xml
07/08/06 11:31:18 PortletContainer maximumTimeout set to '60' from adf-config.xml
07/08/06 11:31:18 PortletContainer resourceProxyPath set to '/resourceproxy' from adf-config.xml
Aug 6, 2007 11:31:20 AM oracle.adfinternal.view.faces.application.ViewHandlerImpl _checkTimestamp
INFO: ADF Faces is running with time-stamp checking enabled. This should not be used in a production environment. See the oracle.adf.view.faces.CHECK_FILE_MODIFICATION property in WEB-INF/web.xml
Aug 6, 2007 11:31:20 AM oracle.portlet.client.utils.PortletLogger info
INFO: Portlet Client MBeans registered
Aug 6, 2007 11:31:25 AM oracle.adfinternal.view.faces.renderkit.html.portlet.PortletRenderer preRender
SEVERE: oracle.adf.model.portlet.binding.PortletBindingException: Unable to get portlet response (Internal Error) for portlet binding ADFFacesDemoPortlet11_1
at oracle.adf.model.portlet.binding.PortletBinding.getPortletRendition(PortletBinding.java:514)
at oracle.adfinternal.view.faces.renderkit.html.portlet.PortletRenderer.preRender(PortletRenderer.java:417)
at oracle.adfinternal.view.faces.renderkit.html.customizable.ShowDetailFrameRenderer.encodeBegin(ShowDetailFrameRenderer.java:227)
at oracle.adf.view.faces.component.UIXComponentBase.encodeBegin(UIXComponentBase.java:593)
at oracle.adfinternal.view.faces.renderkit.RenderUtils.encodeRecursive(RenderUtils.java:39)
at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeChild(CoreRenderer.java:242)
at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeAllChildren(CoreRenderer.java:265)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer.renderContent(PanelPartialRootRenderer.java:65)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.renderContent(BodyRenderer.java:117)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer.encodeAll(PanelPartialRootRenderer.java:147)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.encodeAll(BodyRenderer.java:60)
at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeEnd(CoreRenderer.java:169)
at oracle.adf.view.faces.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:624)
at javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:645)
at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:568)
at oracle.adf.view.faces.webapp.UIXComponentTag.doEndTag(UIXComponentTag.java:100)
at test1.jspService(_test1.java:122)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:598)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:522)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:712)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:286)
at com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:50)
at com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:192)
at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:197)
at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
at oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:157)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
at java.lang.Thread.run(Thread.java:595)
Caused by: oracle.portlet.client.container.PortletRemoteException: oracle.portlet.server.container.OperationFailedException: oracle.portlet.wsrp.v1.OperationFailedException: oracle.portlet.wsrp.v1.soap.OperationFailed
at oracle.portlet.client.techimpl.wsrp.WSRPBaseTerminalPipe.processException(WSRPBaseTerminalPipe.java:37)
at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.execute(WSRPGetMarkupPipe.java:185)
at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.pre(WSRPGetMarkupPipe.java:52)
at oracle.portlet.client.service.pipeline.PipeContext.internalExecute2(PipeContext.java:516)
at oracle.portlet.client.service.pipeline.PipeContext.internalExecute(PipeContext.java:403)
at oracle.portlet.client.service.pipeline.PipeContextRunnable.run(PipeContextRunnable.java:24)
at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:431)
at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
at oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker.runTask(ModifiedThreadPoolExecutor.java:398)
at oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker.run(ModifiedThreadPoolExecutor.java:423)
... 1 more
Caused by: oracle.portlet.server.container.OperationFailedException: oracle.portlet.wsrp.v1.OperationFailedException: oracle.portlet.wsrp.v1.soap.OperationFailed
at oracle.portlet.wsrp.v1.ServerToWSRPv1.getMarkup(ServerToWSRPv1.java:1093)
at oracle.portlet.client.connection.wsrp.ActivityServerWrapper.getMarkup(ActivityServerWrapper.java:1330)
at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.execute(WSRPGetMarkupPipe.java:116)
... 9 more
Caused by: oracle.portlet.wsrp.v1.OperationFailedException: oracle.portlet.wsrp.v1.soap.OperationFailed
at oracle.portlet.wsrp.v1.WSRP_v1_Markup_PortTypeJaxbToSoap.getMarkup(WSRP_v1_Markup_PortTypeJaxbToSoap.java:101)
at oracle.portlet.wsrp.v1.ServerToWSRPv1.getMarkup(ServerToWSRPv1.java:977)
... 11 more
Caused by: oracle.portlet.wsrp.v1.soap.OperationFailed
at oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_PortType_getMarkup_Fault_SOAPSerializer.deserializeDetail(WSRP_v1_Markup_PortType_getMarkup_Fault_SOAPSerializer.java:269)
at oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserializeSOAP11(SOAPFaultInfoSerializer.java:132)
at oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserialize(SOAPFaultInfoSerializer.java:94)
at oracle.j2ee.ws.common.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:180)
at oracle.j2ee.ws.common.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:147)
at oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_Binding_SOAP_Stub._readBodyFaultElement(WSRP_v1_Markup_Binding_SOAP_Stub.java:456)
at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:321)
at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:112)
at oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_Binding_SOAP_Stub.getMarkup(WSRP_v1_Markup_Binding_SOAP_Stub.java:76)
at oracle.portlet.wsrp.v1.WSRP_v1_Markup_PortTypeJaxbToSoap.getMarkup(WSRP_v1_Markup_PortTypeJaxbToSoap.java:78)
... 12 more
Then I tried to deploy the test1.jsp as a WAR file in the webcenter OC4J and tried this URL
http://localhost:6688/AdfFacesDemoTest1/test1.jsp
but it gave me this error
500 Internal Server Error
Servlet error: An exception occurred. The current application deployment descriptors do not allow for including it in this response. Please consult the application log for details.
When I tried this URL I got a diffrent error. Googling this did not help at all
http://localhost:6688/AdfFacesDemoTest1/faces/test1.jsp
07/08/06 11:33:26 PortletContainer portletTechnologies set to '{oracle.portlet.client.containerimpl.web.WebPortletTechnologyConfig,oracle.portlet.client.containerimpl.wsrp.WSRPPortletTechnologyConfig}' from adf-config.xml
07/08/06 11:33:26 PortletContainer defaultTimeout set to '20' from adf-config.xml
07/08/06 11:33:26 PortletContainer minimumTimeout set to '1' from adf-config.xml
07/08/06 11:33:26 PortletContainer maximumTimeout set to '60' from adf-config.xml
07/08/06 11:33:26 PortletContainer resourceProxyPath set to '/resourceproxy' from adf-config.xml
2007-08-06 11:33:58.843 ERROR oracle.portlet.client.persistence.PersistenceNotFoundException: mdsId=/oracle/adf/portlet/AdfFacesDemoProducer_1186417722625/ap/E0default_3c036e4c_0114_1000_8003_83e15f750fa7.pxml not found
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.get(MDSPersistenceContext.java:587)
at oracle.portlet.client.beanimpl.persistence.PersistenceBeanFactory.getExisting(PersistenceBeanFactory.java:226)
at oracle.portlet.client.beanimpl.persistence.PersistenceBeanContext.getExisting(PersistenceBeanContext.java:83)
at oracle.portlet.client.containerimpl.PublicFactoryImpl.get(PublicFactoryImpl.java:248)
at oracle.portlet.client.containerimpl.PublicFactoryImpl.get(PublicFactoryImpl.java:258)
at oracle.portlet.client.containerimpl.PortletContainerImpl.getPortlet(PortletContainerImpl.java:227)
at oracle.adf.model.portlet.binding.PortletBinding.prepareModel(PortletBinding.java:801)
at oracle.adf.model.portlet.binding.PortletBinding.refresh(PortletBinding.java:606)
at oracle.adf.model.binding.DCBindingContainerDef$1RegionBindingAdapter.refresh(DCBindingContainerDef.java:1011)
at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:2455)
at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2260)
at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareModel(PageLifecycleImpl.java:99)
at oracle.adf.controller.faces.lifecycle.FacesPageLifecycle.prepareModel(FacesPageLifecycle.java:73)
at oracle.adf.controller.v2.lifecycle.Lifecycle$8.execute(Lifecycle.java:210)
at oracle.adf.controller.v2.lifecycle.Lifecycle.executePhase(Lifecycle.java:116)
at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.mav$executePhase(ADFPhaseListener.java:29)
at oracle.adf.controller.faces.lifecycle.ADFPhaseListener$4.after(ADFPhaseListener.java:327)
at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:90)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:254)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
Caused by: oracle.mds.core.MetadataNotFoundException: No metadata found for metadata object "/oracle/adf/portlet/AdfFacesDemoProducer_1186417722625/ap/E0default_3c036e4c_0114_1000_8003_83e15f750fa7.pxml"
at oracle.mds.core.MetadataObject.getBaseMO(Unknown Source)
at oracle.mds.core.MDSSession.getBaseMO(Unknown Source)
at oracle.mds.core.MDSSession.getMutableMO(Unknown Source)
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.getBaseMutableMO(MDSPersistenceContext.java:1143)
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.get(MDSPersistenceContext.java:577)
... 40 more
Here is my portlet.xml in ui project
<?xml version="1.0" encoding="ISO-8859-1"?>
<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd
http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">
<portlet>
<description>ADF Faces Demo Portlet 1</description>
<portlet-name>ADFFacesDemo1</portlet-name>
<display-name>ADF Faces Demo portlet 1</display-name>
<portlet-class>oracle.portlet.server.bridges.jsf.FacesPortlet
</portlet-class>
<init-param>
<name>DefaultPage.view</name>
<value>/untitled1.jsp</value>
</init-param>
<init-param>
<name>BridgeLifecycleListeners</name>
<value>
oracle.portlet.server.bridges.jsf.adf.ADFFacesBridgeLifecycleListener,
oracle.portlet.server.bridges.jsf.adf.BindingFacesBridgeLifecycleListener
</value>
</init-param>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>VIEW</portlet-mode>
</supports>
<supported-locale>en</supported-locale>
<portlet-info>
<title>ADF Faces Demo Portlet 1</title>
<short-title>ADFFacesDemo1</short-title>
</portlet-info>
</portlet>
</portlet-app>
web.xml in ui project (where the AFD application is)
<?xml version = '1.0' encoding = 'windows-1252'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
<description>Empty web.xml file for Web Application</description>
<filter>
<filter-name>adfFaces</filter-name>
<filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>adfFaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>resources</servlet-name>
<servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>resources</servlet-name>
<url-pattern>/adf/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>35</session-timeout>
</session-config>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
<mime-mapping>
<extension>txt</extension>
<mime-type>text/plain</mime-type>
</mime-mapping>
</web-app>
web.xml in test1 project (where portlet producer is registered)
<?xml version = '1.0' encoding = 'windows-1252'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
<description>Empty web.xml file for Web Application</description>
<context-param>
<param-name>CpxFileName</param-name>
<param-value>test1.DataBindings</param-value>
</context-param>
<context-param>
<param-name>oracle.mds.web-app-root</param-name>
<param-value>/test1/public_html</param-value>
</context-param>
<context-param>
<param-name>oracle.adf.view.faces.CHANGE_PERSISTENCE</param-name>
<param-value>oracle.adfinternal.view.faces.change.HybridChangeManager</param-value>
</context-param>
<filter>
<filter-name>adfFaces</filter-name>
<filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
</filter>
<filter>
<filter-name>adfBindings</filter-name>
<filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
</filter>
<filter>
<filter-name>mdsFilter</filter-name>
<filter-class>oracle.mds.jsp.MDSJSPFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>adfFaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<url-pattern>*.jspx</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<servlet-name>resourceproxy</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<servlet-name>adfportlet</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>mdsFilter</filter-name>
<servlet-name>jsp2</servlet-name>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>resources</servlet-name>
<servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>adfportlet</servlet-name>
<servlet-class>oracle.adfinternal.view.faces.renderkit.html.portlet.ADFPortletServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>resourceproxy</servlet-name>
<servlet-class>oracle.portlet.client.resourceproxy.adf.ADFPortletResourceServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>jsp2</servlet-name>
<servlet-class>oracle.jsp.runtimev2.JspServlet</servlet-class>
<init-param>
<param-name>tags_reuse_default</param-name>
<param-value>none</param-value>
</init-param>
<init-param>
<param-name>check_page_scope</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>debug_mode</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>page_provider</param-name>
<param-value>oracle.mds.jsp.MDSJSPProvider</param-value>
</init-param>
<init-param>
<param-name>page_repository</param-name>
<param-value>oracle.mds.jsp.MDSJSPProvider</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>resources</servlet-name>
<url-pattern>/adf/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>adfportlet</servlet-name>
<url-pattern>/adfportlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>adfportlet</servlet-name>
<url-pattern>/adfportletfullpage</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>resourceproxy</servlet-name>
<url-pattern>/resourceproxy</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>jsp2</servlet-name>
<url-pattern>/*.jspx</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>35</session-timeout>
</session-config>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
<mime-mapping>
<extension>txt</extension>
<mime-type>text/plain</mime-type>
</mime-mapping>
<service-ref xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<service-ref-name>service/WSRPServiceRefV1</service-ref-name>
<service-interface>javax.xml.rpc.Service</service-interface>
<wsdl-file>WEB-INF/wsdl/WSRP_v1_Service.wsdl</wsdl-file>
<jaxrpc-mapping-file>WEB-INF/WSRP_v1_Service-java-wsdl-mapping.xml</jaxrpc-mapping-file>
<service-qname xmlns:service-qname_ns__="urn:oasis:names:tc:wsrp:v1:wsdl">service-qname_ns__:WSRP_v1_Service</service-qname>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_Markup_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_ServiceDescription_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_Registration_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_PortletManagement_PortType</service-endpoint-interface>
</port-component-ref>
</service-ref>
<service-ref xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<service-ref-name>service/WSRPServiceRefV2</service-ref-name>
<service-interface>javax.xml.rpc.Service</service-interface>
<wsdl-file>WEB-INF/wsdl/WSRP_v2_Service.wsdl</wsdl-file>
<jaxrpc-mapping-file>WEB-INF/WSRP_v2_Service-java-wsdl-mapping.xml</jaxrpc-mapping-file>
<service-qname xmlns:service-qname_ns__="urn:oasis:names:tc:wsrp:v2:wsdl">service-qname_ns__:WSRP_v2_Service</service-qname>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_Markup_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_ServiceDescription_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_Registration_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_PortletManagement_PortType</service-endpoint-interface>
</port-component-ref>
</service-ref>
</web-app>
Can anyone help please
regards
VijayHello dvohra,
Thanks for the reply but I have done everything before I posted my message on this forum
1. Is the Portlet Faces Bridge library in the project libraries?
yes in both test1 project and ui project. ui project is where the ADF application is and test1 is where the producer is registered
2. I sent the web.xml earlier in the forum. Yes it include the tags
here is it again
<?xml version = '1.0' encoding = 'windows-1252'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
<description>Empty web.xml file for Web Application</description>
<filter>
<filter-name>adfFaces</filter-name>
<filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
</filter>
<filter>
<filter-name>adfBindings</filter-name>
<filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>adfFaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<url-pattern>*.jspx</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>resources</servlet-name>
<servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>resources</servlet-name>
<url-pattern>/adf/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>35</session-timeout>
</session-config>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
<mime-mapping>
<extension>txt</extension>
<mime-type>text/plain</mime-type>
</mime-mapping>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
</web-app>
3. Yes it include that tag also. Please see the web.xml I pasted above
4. Yes I deployed it as the simple WAR file and NEVER as a WebCenter Application WAR
I am assuming that when you refer to web.xml you refer to the one in my ui project where the ADF application is . There is another web.xml file in test1 project where I try to test the portlet. That web.xml is also pasted in my earlier blog
Any other idea ?
thanks a lot
Vijay
______________________________________________________________________ -
Weblogic Portal 10.3.5 using JSF 1.2 portlets with ADF faces
We are developing Portal site using Weblogic Portal 10.3.5 with JSF portlet 1.2 and ADF faces (ADF Application runtime 11.1.1.5 ). But the JSF portlets not supporting ADF faces. Please let me know how we use ADF faces in JSF portlet 1.2 in Weblogic Portal.
Hi Murthy,
We did a detailed analysis.
(1) How do we add ADF taskflows, JSF in to weblogic portal desktop/pages? Do we create portlet out of JSF, and display on desktop/page? If this is the case, what about ADf task flows?
--> Taskflows can be deployed as WSRP2.0 portlets. Note 2 options are there JSF page as portlet or taskflow itself as portlets.
(2) How do we integrate weblogic user profiles and UUP (unified user profiles) with ADF and JSF?
--> ADF Security can use Weblogic Server realm as the security provider. Entitlements in WLP will have to be provided based on Weblogic Server roles. In case you are using external LDAP then both can be integrated withe external LDAP
(3) Can anybody shed some light which this better?
(a) weblogic portal with JPF (Java page flows), NetUI --Legacy approach
Pros:
-Easy Development
-Well tested integrated
Cons:
-Future support
-Enhancements may not be available
-Not really portable or standards based
(b) weblogic portal with ADF, JSF?
Pros:
-If your on Oracle stack then great
-Standards based
Cons:
-JSF Portlet bridge issues
-ADF Faces does not work on IE6!
Well what we are going for is JSR 286, Trinidad components (Supports IE6), JSF.
Difficult choice.
Venkat -
Error with adf-faces-config.xml file in myEclipse
hello,
i'm trying to customize appearance of my JSF/ADF Faces app (which worked fine until now), and tried to insert a adf-faces-config.xml file in my WEB-INF directory, this is it (copied from a tutorial) :
<?xml version="1.0"?>
<adf-faces-config xmlns="http://xmlns.oracle.com/adf/view/faces/config">
<!-- Enable debug output -->
<debug-output>true</debug-output>
<!-- Pick accessibility options based on a per-user managed bean -->
<accessibility-mode>#{user.accessibilityMode}</accessibility-mode>
<!-- A silly use of EL: English users get one appearance, -->
<!-- others get another -->
<skin-family>
#{view.locale.language=='en' ? 'minimal' : 'oracle'}
</skin-family>
</adf-faces-config>
after saving the file (in myEclipse) i get the following error message on the second line :
cvc-elt.1 : Cannot find the declaration of element 'adf-faces-config'
what does that mean and what should i do ?
thx...hello,
i'm trying to customize appearance of my JSF/ADF
Faces app (which worked fine until now), and tried to
insert a adf-faces-config.xml file in my WEB-INF
directory, this is it (copied from a tutorial) :
<?xml version="1.0"?>
<adf-faces-config
xmlns="http://xmlns.oracle.com/adf/view/faces/config">
<!-- Enable debug output -->
<debug-output>true</debug-output>
<!-- Pick accessibility options based on a per-user
managed bean -->
<accessibility-mode>#{user.accessibilityMode}</accessi
bility-mode>
<!-- A silly use of EL: English users get one
appearance, -->
<!-- others get another -->
<skin-family>
#{view.locale.language=='en' ? 'minimal' : 'oracle'}
</skin-family>
</adf-faces-config>
after saving the file (in myEclipse) i get the
following error message on the second line :
cvc-elt.1 : Cannot find the declaration of element
'adf-faces-config'
what does that mean and what should i do ?
thx...Hello again,
i'm still stuck with this, could somebody PLEASE give me a hint ?
thx,
dom. -
How to use JavaScript Calendar with ADF Faces ?
Hi All,
Our application is running under limited bandwidth so that we want to use clientside/javascript calendar instead of the ADF Faces calendar (server side).
I already have the javascript that will pop-up calendar selection dialog when invoked.
Using JSP, this is working perfectly, BUT I don't know how to integrate this Javascript calendar with ADF Faces form.
How can I do that ?
Attached below is the JSP that works with script :
<f:view>
<html>
<head>
<script language="JavaScript" src="ts_picker.js">
</script>
<meta http-equiv="Content-Type"
content="text/html; charset=windows-1252"/>
<title>Calendar</title>
</head>
<body>
<form name="tstest">
<input type="Text" name="timestamp" value="">
<img src="cal.gif" width="16" height="16" border="0" alt="Click here to get the date">
</form>
<h:form>
</h:form>
</body>
</html>
</f:view>Hi,
ADF Faces does not provide a method that allows you to call JavaScript on the client. This may change in upcoming versions
Frank -
ADF Rich Client Faces af:table editingMode="clickToEdit" event handling
I have a table with editingMode="clickToEdit" that contains columns with inputText with values that map to Eclipselink JPA Entity bean properties.
I am struggling to find an event that I can monitor that would allow me to persist or cancel the changes the user enters. I might add "Commit" and "Cancel" commands in their own columns but then I would like to have an event that allow me to enable and disable those commandButtons. In any event I would like to capture the fact that a row has entered editing mode with either a clientListener or a servletListener.
Is any of this possible?
Frank's suggestion in Re: Edit Specific Row on click of button in ADF table implies that the table be re-rendered and I would specifically like to avoid that as it is disturbing to the user to have the entire table redrawn, particularly when the size of the table exceeds the displayed rows.
Thanks, Mark.I suppose I didn't ask my question properly. I have been persisting POJO and JPA beans with ADF Faces, Trinidad and ADF Faces Rich Client since 2004 and I have a hundred thousand lines of library code to manage that.
The tricky thing about <af:tables (and <tr:tables for that matter) is that it is challenging to render individual rows or cells and re-rendering the entire table is disruptive to the user experience. My normal practice is to allow the user to select a row and then click an edit button that re-renders an edit panel (or detail stamp) which contains a submit button. However, for small simple tables this is overkill and in-line editing would be very attractive. The WONDERFUL thing about <af:table editingMode="clickToEdit" is that the user can enter an EDIT mode without redrawing the table.
My problem is that I have not yet discovered an event that I can monitor to let me know that the user has done this. What I think that I want is something like the clientListener selection event that would fire when the editingMode state changed: a clientListener editingMode event.
If I use the clientListener selection event, is there any way I can determine editingMode state of the row?
Here is what I have tried
<af:table id="paymentTable" binding="#{PaymentLogTable.table}"
rows="5" value="#{PaymentLogTable.model}" rowSelection="single" columnSelection="single"
var="payRow" displayRow="selected" editingMode="clickToEdit"
selectionListener="#{PaymentLogTable.selectionListener}">
<af:clientAttribute name="keyColumn" value="payRow_amount"/>
<af:clientListener method="MIZAR.adf.selectionHandler" type="selection"/>
<af:clientListener method="MIZAR.adf.editingModeHandler" type="dblClick"/>
<af:column clientComponent="true" width="50" align="center" headerText="ID" sortable="false">
<af:outputText value="#{payRow.id}" />
</af:column>
<af:column width="75" align="right" headerText="Amount" sortable="false" clientComponent="true">
<af:inputText id="payRow_amount" value="#{payRow.amount}" valueChangeListener="#{payRow.setRowDirty}" clientComponent="true">
<af:convertNumber minFractionDigits="2" maxFractionDigits="2"/>
</af:inputText>
</af:column>
... more columns
MIZAR.adf.selectionHandler = function (event){
MIZAR.adf.editingModeHandler(event);
MIZAR.adf.editingModeHandler = function (event) {
var table = event.getSource();
var keys = table.getPropertyKeys();
var selectedRowKeys = table.getSelectedRowKeys();
var keyColumn = table.getProperty('keyColumn');
var aKeySet = event.getAddedSet();
for(aRowKey in aKeySet){
var newRowKey = aRowKey;
var newRowComp = table.findComponent(keyColumn,newRowKey);
if ( newRowComp ){
var readOnly = newRowComp.getReadOnly();
if ( !readOnly ){
alert ('Editable'); // NEVER GETS HERE
if (table.getProperty('isCanceled')) {
alert ('canceled');
}But, the MIZAR.adf.editingModeHandler doesn't get called when I double click the row and neither does the MIZAR.adf.selectionHandler. The inputText component always shows up as readOnly = true.
Thanks, Mark -
Hi everyone,
I'm trying to map a <af:table> to an ADF Business Component. I can retrieve the records and I can also navigate doing Next and Previous, but I cannot do a Delete of a record. Do you know if there's any kind of "work arround" to use ADF Faces with ADF BC to do a delete or update, etc.?
Here is the code, you can notice the: <af:tableSelectOne> tag to put the radio buttons colums to select which one to delete, and you can also notice the action="#{row.markForDeletion}" for the commandbutton to perform the delete.
Jonas Jacobi wrote in his web blog on August 16 that he was going to post some samples for this "work arround" but I think he never posted them.
Here is the code:
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/EA12/html" prefix="afh"%><%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/ui/jsp/adftags" prefix="adf"%>
<adf:uimodelreference model="table_testUIModel"/>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/EA12" prefix="af"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ page contentType="text/html;charset=windows-1252"%>
<html>
<head>
<H1>This is a Test</H1>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>my test page</title>
<link href="css/blaf.css" rel="stylesheet" media="screen"/>
</head>
<body>
<f:view>
<afh:head title="tableSelectOne Demo"/>
<af:panelPage>
<af:table rows="3" var="row" value="#{bindings.CmSvcView1.rangeSet}" first="0">
<f:facet name="selection">
<af:tableSelectOne text="Select and ...">
<af:commandButton text="Delete" action="#{row.markForDeletion}"/>
</af:tableSelectOne>
</f:facet>
<af:column>
<f:facet name="header">
<af:outputText value="SvcId"/>
</f:facet>
<af:outputText value="#{row.SvcId}"/>
</af:column>
<af:column>
<f:facet name="header">
<af:outputText value="SvcNum"/>
</f:facet>
<af:outputText value="#{row.SvcNum}" styleClass="OraHeaderSubSub"/>
</af:column>
<af:column>
<f:facet name="header">
<af:outputText value="SvcName"/>
</f:facet>
<af:outputText value="#{row.SvcName}" styleClass="OraHeaderSubSub"/>
</af:column>
</af:table>
</af:panelPage>
</f:view>
</body>
</html>
Thanks,
Pablo (sorry for the long post)Thank you Gabrielle. At least now I have an excuse to tell my boss why I can't get it to work.
Any idea when it may be available? Would it be a better idea to implement the table in plain vanilla JSF, and when ADF Faces is ready for ADF BC then do the migration?
Are there any workarround to this problem?
Thank you for your time,
Pablo -
Developing a User Interface with ADF Faces - Tutorial - Questions
Hello everybody,
I am a forms developer and I am totally new to ADF.
I started from the tutorials : Developing Business Services with ADF BC and Developing a User Interface with ADF Faces...
Everything was easy and very clear, as far as the material covered in the tutorial is concerened.
But when I tried to modify a little bit the application, to perform a different task... disaster!!! :-)
One of the "simple" things that I tried to do -for example- is :
In the login.jspx, where we have created an ADF Parameter form (that accepts as a parameter the customer ID) and
retrieves in the next page the Orders of the specific customer.... to Display a message, such as "+Customer Does Not Exist+"
if the user types in the parameter form an not existent customer ID...
I understand that I should use a validator.... But I cannot find the list validator (from query) in the bind variables not in the ADF Parameter Form Fields....
Does anyone know?
Regards,
Maira KotsovoulouDear Grant,
CustomerID is in the UI Project, and appears as a part of an ADF Parameter Form... and I can not find key exists in the UI Validators....
CustomerID in the .entities is a bind variable in a query. select ... from customers where customer_id = :p_customer_id. Again KEYEXISTS validator is not available in the bind variables sections... Only in the attributes!!!
I understand that the "normal" behavior in a query with bind variables where there is no match is to display nothing as it does!!!
But I was just wondering, if I could even trap that before I display the empty form...? Or could I display a text in my ADF form, that says no rows... (as I can do in an ADF Table???) -
Hi, I want to open dialog window with ADF Faces
Hi, I want to open dialog window with ADF Faces when commandButton pressed, but the window opended at same window, not opened new window.
my command button is follow,
<af:commandButton text="Ücret Girişi"
binding="#{backing_rezervasyonlar.rez_iptal}"
id="rez_iptal"
action="dialog:ucret"
windowHeight="200"
windowWidth="300"/>
I am waiting your help....Remove the partialSubmit attribute from the declaration of your command button. Therefore, the code you posted should be:
<af:commandButton text="Ücret Girişi"
binding="#{backing_rezervasyonlar.rez_iptal}"
id="rez_iptal"
action="dialog:ucret"
useWindow="true"
windowHeight="200"
windowWidth="300"/> NOT:
<af:commandButton text="Ücret Girişi"
binding="#{backing_rezervasyonlar.rez_iptal}"
id="rez_iptal"
action="dialog:ucret"
partialSubmit="true"
useWindow="true"
windowHeight="200"
windowWidth="300"/> --RiC -
How to we use Tiles Framework with ADF Faces ?
Hello Every body,
Can anyone tell me whether We mix Tiles framework of Struts, and ADF Faces Framework?
I 've found that we can mix JSF and Tiles, but can we use ADF Faces and Tiles together?
Waiting for your answer!
Thanking you ,
Samba.Dear Experts,
Please help me !
As I could not get enough help from you masters,
I set out to do on my own, hoping that at some time you would come to my rescue.
I designed a simple jspx page SiteLayout.jspx whose code is given below:
<?xml version='1.0' encoding='UTF-8'?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:af="http://xmlns.oracle.com/adf/faces"
xmlns:afh="http://xmlns.oracle.com/adf/faces/html"
xmlns:c="http://java.sun.com/jstl/core"
xmlns:tiles="http://jakarta.apache.org/struts/tags-tiles">
<jsp:output omit-xml-declaration="true" doctype-root-element="HTML"
doctype-system="http://www.w3.org/TR/html4/loose.dtd"
doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"/>
<jsp:directive.page contentType="text/html;charset=UTF-8"/>
<f:view>
<af:document>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>SiteLayout</title>
</head>
<body>
<h:form binding="#{backing_SiteLayout.form1}" id="form1">
<af:table id="PageLayout" width="100%" >
<!-- <tiles:getAsString name="title" /> -->
<f:subview id="siteview">
<tiles:insert definition="siteLayoutDef">
<af:table id="headertable" width="100%">
<tr>
<td width="100%" colspan="2">
<f:subview id="header">
<tiles:insert attribute="header"/>
</f:subview>
</td>
</tr>
<tr>
<td width="100%" colspan="2">
<f:subview id="topview">
<tiles:insert attribute="topmenu"/>
</f:subview>
</td>
</tr>
<tr>
<td width="100%" colspan="2">
<f:subview id="navigationview">
<tiles:insert attribute="navigationbar"/>
</f:subview>
</td>
</tr>
<tr>
<td width="30%">
<f:subview id="leftview">
<tiles:insert attribute="leftmenu"/>
</f:subview>
</td>
<td width="70%">
<f:subview id="contentview">
</f:subview>
<tiles:insert attribute="content"/>
</td>
</tr>
<tr>
<td width="100%" colspan="2">
<f:subview id="footerview">
<tiles:insert attribute="footer"/>
</f:subview>
</td>
</tr>
</af:table>
</tiles:insert>
</f:subview>
</af:table>
</h:form></body>
</html>
</af:document>
</f:view>
<!--oracle-jdev-comment:auto-binding-backing-bean-name:backing_SiteLayout-->
</jsp:root>
My SiteLayout.jspx defines the layout of the pages on my Web application.
My Home page is this:
<?xml version='1.0' encoding='UTF-8'?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:afc="http://xmlns.oracle.com/adf/faces/webcache"
xmlns:af="http://xmlns.oracle.com/adf/faces"
xmlns:afh="http://xmlns.oracle.com/adf/faces/html"
xmlns:afi="http://xmlns.oracle.com/adf/industrial/faces"
xmlns:graph="/webapp/graph.tld"
xmlns:c="http://java.sun.com/jstl/core"
xmlns:tiles="http://jakarta.apache.org/struts/tags-tiles">
<jsp:output omit-xml-declaration="true" doctype-root-element="HTML"
doctype-system="http://www.w3.org/TR/html4/loose.dtd"
doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"/>
<jsp:directive.page contentType="text/html;charset=UTF-8"/>
<f:view>
<af:document>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Home</title>
</head>
<body>
<!-- <tiles:getAsString name="title" ignore="true" /> -->
<h:form binding="#{backing_Home.form1}" id="form1">
<tiles:insert definition="siteLayoutDef" flush="false">
<tiles:put name="header" value="/Header.jspx" />
<tiles:put name="footer" value="/Footer.jspx" />
<tiles:put name="leftmenu" value="/LeftMenu.jspx" />
<tiles:put name="content" value="/Content.jspx" />
<tiles:put name="header" value="/TopMenu.jspx" />
<tiles:put name="footer" value="/NavigationBar.jspx" />
</tiles:insert>
</h:form>
</body>
</html>
</af:document>
</f:view>
<!--oracle-jdev-comment:auto-binding-backing-bean-name:backing_Home-->
</jsp:root>
My <tiles-defs> page is this:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
<tiles-definitions>
<definition name="tiles-defs"/>
<definition name="siteLayoutDef" path="/SiteLayout.jspx">
<!--<put name="title" value="SiteBean.getQuoteofDay()" /> -->
<put name="header" value="/header.jspx" />
<put name="footer" value="/footer.jspx" />
<put name="content" value=""/>
<put name="topmenu" value="/TopMenu.jspx"/>
<put name= "leftmenu" value="/LeftMenu.jspx"/>
<put name="navigationbar" value="/NavigationBar.jspx"/>
</definition>
</tiles-definitions>
My Web.xml is this:
<?xml version = '1.0' encoding = 'UTF-8'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
<description>Empty web.xml file for Web Application</description>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<!-- Tiles ViewHandler config file -->
<context-param>
<description>Tiles configuration
definition files and a listener need to be defined.
the listener will initialize JspTilesViewHandlerImpl with tiles definitions.
</description>
<param-name>tiles-definitions</param-name>
<param-value>/WEB-INF/tiles-defs.xml</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml, /WEB-INF/tiles-defs.xml</param-value>
</context-param>
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.jspx</param-value>
</context-param>
<context-param>
<param-name>oracle.adf.view.faces.ALTERNATE_VIEW_HANDLER</param-name>
<param-value>
org.apache.myfaces.tomahawk.application.jsp.JspTilesViewHandlerImpl
</param-value>
</context-param>
<filter>
<filter-name>adfFaces</filter-name>
<filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>adfFaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>resources</servlet-name>
<servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>resources</servlet-name>
<url-pattern>/adf/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>35</session-timeout>
</session-config>
<servlet>
<servlet-name>Tiles Servlet</servlet-name>
<servlet-class>
org.apache.struts.tiles.TilesServlet
</servlet-class>
<init-param>
<param-name>definitions-config</param-name>
<param-value>/WEB-INF/tiles-defs.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
<mime-mapping>
<extension>txt</extension>
<mime-type>text/plain</mime-type>
</mime-mapping>
</web-app>
The Error I'm getting is :
IllegalStateException :No ADFRenderingContext;
What happened?
Where did I go wrong?
could you please help me?
Thanking you in advance,
Waiting for your response,
Samba.
Message was edited by:
saasira
Message was edited by:
saasira
Message was edited by:
saasira -
Jdev11g: How to use a Ord.image data type with ADF Faces 11g
Where to find an example about Ord.image data type with ADF Faces 11g preview3
Hi,
such a sample doesn't yet exist.
Frank
Btw.: The Jdeveloper 11 forum is JDeveloper and OC4J 11g Technology Preview -
Aggregating table - how to solve this with ADF Faces
Hello.
I am trying to solve something that would typically be really simple. However, now i' using ADF faces which is new to me and i'm stuck.
I want to show a table of rows with aggregated numbers (department in example below) and then "open up" any row by clicking on it to display the numbers that make up the aggregate (the guys in the helpdesk department in the example below).
Something like this:
DEPARTMENT SALARIES
+Sales 1.234.567
+Warehouse 3.425.553
-Helpdesk 655.000
Joe 155.000
Jill 300.001
Burt 199.999
+Personnel 546.225
+Management 9.646.383
And to make things more complicated, some of the aggregate rows in my real life example don't have any underlying rows. They just have the total. Can anyone give me hint about how to do this with an ADF Faces-control? I need to show management this can be solved quick and simple with ADF Faces, so i can convince them that it is the way we should be working in the future.
Edited by: GoodCoffee on Jun 2, 2009 4:15 AM. Trying to indent the three rows under "Helpdesk"Hi,
if you use ADF BC as the business Service then you can create a transient attribute (one that does not ave a database column ) and compute the total. Using JDeveloper 11g, you can use a Groovy expression. The below example calculates the Overall Salary paid by an department. The transient attribute is defined on the Department Entity Object
XML View
<Attribute
Name="SumSalary"
ColumnName="SUMSALARY"
SQLType="NUMERIC"
Type="java.lang.Long"
ColumnType="NUMBER"
IsQueriable="false"
IsPersistent="false">
<TransientExpression><![CDATA[Employees1.sum("Salary")]]></TransientExpression>
</Attribute>The Employees1.sum("Salary") string is the Groovy expression that you need to add for the attribute. You select the created transient attribute in the EO editor and press the pencil icon. Then you select "Expression" as the value type and add the string.
See: http://www.oracle.com/technology/products/jdev/11/how-tos/groovy/introduction_to_groovy.pdf
Frank -
Difficulty with ADF Faces/ADF Essentials and Glassfish
Hi all,
I've got a web application written with ADF Faces, and it runs just fine within jDeveloper 11.1.2.3 but when I deploy it to Glassfish 3.1.2 (with ADF Essentials installed) something curious happens.
My application has no difficulty performing database reads, but when it tried to write to the database and commit, it fails.
I've seen only a couple of other people with this problem, and none of them seem to have found a solution - so I'm assuming it's something stupid that I'm doing or misunderstanding.
Here is the log file:
[#|2013-11-10T11:45:17.601-0500|WARNING|glassfish3.1.2|oracle.adf.controller.faces.lifecycle.Utils|_ThreadID=79;_ThreadName=Thread-2;|ADF: Adding the following JSF error message: java.lang.NoClassDefFoundError cannot be cast to java.lang.Exception
java.lang.ClassCastException: java.lang.NoClassDefFoundError cannot be cast to java.lang.Exception
at oracle.jbo.server.BaseSQLBuilderImpl.isSQLRecoverableException(BaseSQLBuilderImpl.java:4575)
at oracle.jbo.server.DBTransactionImpl.doPostTransactionListeners(DBTransactionImpl.java:3380)
at oracle.jbo.server.DBTransactionImpl.postChanges(DBTransactionImpl.java:3067)
at oracle.jbo.server.DBTransactionImpl.commitInternal(DBTransactionImpl.java:2071)
at oracle.jbo.server.DBTransactionImpl.commit(DBTransactionImpl.java:2352)
at oracle.adf.model.bc4j.DCJboDataControl.commitTransaction(DCJboDataControl.java:1590)
at oracle.adf.model.binding.DCDataControl.callCommitTransaction(DCDataControl.java:1415)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1428)
at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2169)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:731)
at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.executeEvent(PageLifecycleImpl.java:402)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding._execute(FacesCtrlActionBinding.java:252)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding.execute(FacesCtrlActionBinding.java:210)
at app.AppModuleImpl.commitOperation(AppModuleImpl.java:50)
at com.methods.lrc.view.VendorBean.createPaymentReceived(VendorBean.java:509)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.sun.el.parser.AstValue.invoke(AstValue.java:254)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:302)
at org.apache.myfaces.trinidad.component.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:46)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:130)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:461)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:134)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:112)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:130)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:461)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:134)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:106)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:787)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1252)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:973)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:354)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:202)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:508)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1550)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at com.methods.lrc.view.ApplicationSessionExpiryFilter.doFilter(ApplicationSessionExpiryFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:173)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
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 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:860)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:757)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1056)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:229)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:724)
Here is the method where it fails:
public String createPaymentReceived() {
AppModuleImpl appModule = this.getAppModule();
ViewObjectImpl paymentReceivedVOI = appModule.getPaymentsReceivedView3();
Row paymentRow = paymentReceivedVOI.createRow();
paymentRow.setAttribute("CheckNumber", prCheckNumber);
paymentRow.setAttribute("PaymAmount", totalSelectedValue);
paymentRow.setAttribute("PaymentComment", prComment);
paymentRow.setAttribute("PaymentDate", prPaymentDate);
paymentRow.setAttribute("PaymentType", prPaymentType);
paymentRow.setAttribute("TrackId", prTrackId);
appModule.commitOperation();
DBSequence paymentsReceivedId = (DBSequence)paymentRow.getAttribute("PaymentsReceivedId");
Iterator selectionIt = unpaidPaymentItemsTable.getSelectedRowKeys().iterator();
while (selectionIt.hasNext()) {
Object rowKey = selectionIt.next();
unpaidPaymentItemsTable.setRowKey(rowKey);
int index = unpaidPaymentItemsTable.getRowIndex();
JUCtrlHierNodeBinding row = (JUCtrlHierNodeBinding)unpaidPaymentItemsTable.getRowData(index);
Row selectedRow = row.getRow();
selectedRow.setAttribute("PaymentsReceivedId", paymentsReceivedId.getSequenceNumber());
selectedRow.setAttribute("PaymentDate", prPaymentDate);
appModule.commitOperation();
prCheckNumber = null;
totalSelectedValue = 0;
prComment = null;
prPaymentDate = new Date();
prTrackId = null;
prPaymentType = "K";
refreshTableIterator("VendorPaymentItemsView1Iterator");
refreshTableIterator("VendorPaymentsReceived1Iterator");
return null;
it fails on the second appModule.commitOperation() (which I've bolded)
if anyone can give a clue to what I'm misunderstanding I'd really appreciate it. I'm sure that if I had the course for BaseSQLBuilderImpl.java and/or DBTransactionImpl it would be easier to see what the actual error was - unfortunately java.lang.ClassCastException: java.lang.NoClassDefFoundError cannot be cast to java.lang.Exception doesn't tell me much of anything.
Thanks so much to anyone who's got the time/knowledge to help.
BobThat doesn't seem to make any difference. It works just fine within jDeveloper, but as soon as I deploy it, I can no longer write to the database.
A few more details that seem relevant - it's not only this method that fails. Even on screens which were designed without any backing code (where I used the wizards to create my forms and commit buttons) the same exact thing happens.
I've also replicated this behavior in Tomcat.
Part of what is happening is that something is throwing a NoClassDefFoundError, which is caught by a catch (Throwable thEx) clause within DBTransactionImpl. This passes the Error to a method (isSQLRecoverableException) within the BaseSQLBuilderImpl class. The problem is that this method takes only Exceptions for arguments, and NoClassDefFoundError is not a subclass of Exception (only of Throwable.)
It seems obvious to me that there's somewhere a jar missing, but I cannot find it without knowing which class was not found. -
ADF FACES:Creating custom component on top of adf
My UI requiement is sth like
Name : xxxxxxx
Description : xxxxxxxxx
Search : cccccc
This UI i want to create as a custom tag and use it across our project.
We need to include this utiltiy in JSP Tag libraries so that it appears in
the compoent palette.
WE have done the same thing using pure JSF and it is working fine.
But we need to leverage ADF classes.. so that we can get the same look and
feel and we simply set our proprties and renering part will come from ADF faces.
In my main component class I have written the code sth like
public void encodeChildren(FacesContext context)throws IOException {
RenderKit rk = context.getRenderKit();
CoreInputText buton = new CoreInputText();
buton.setValue("my text");
buton.setRendered(true);
rk.getRenderer("myFamily", getRendererType()).encodeBegin(context, buton);
After doing this I run my test.jsp and no output is produced.
So can you let us know the correct way for doing this.
This is a high priority requirement for US.if anybody can pls help asap..
Thanks
RaviHi All,
I was able to get this code to run and wanted to share with you the corrections
================== HelloUIComp.java ==============
package view.components.msg;
import java.io.IOException;
import javax.faces.application.Application;
import javax.faces.component.UIComponentBase;
import javax.faces.component.UIViewRoot;
import javax.faces.context.FacesContext;
import oracle.adf.view.faces.component.core.CoreForm;
import oracle.adf.view.faces.component.core.input.CoreInputText;
import oracle.adf.view.faces.component.core.layout.CorePanelForm;
import oracle.adf.view.faces.component.core.nav.CoreCommandButton;
import oracle.adf.view.faces.component.core.output.CoreMessage;
import oracle.adf.view.faces.component.core.output.CoreMessages;
public class HelloUIComp extends UIComponentBase {
private CoreCommandButton button;
private CoreInputText intext;
private CoreInputText description;
private CorePanelForm panel;
private CoreForm form;
public static final String COMPONENT_TYPE = "com.mycompany..hello";
// This will be a self-rendering component
public static final String RENDERER_TYPE = null;
public HelloUIComp() {
FacesContext context = FacesContext.getCurrentInstance();
Application apps = context.getApplication();
UIViewRoot root = context.getViewRoot();
panel = (CorePanelForm)apps.createComponent(CorePanelForm.COMPONENT_TYPE);
panel.setId("errPanel");
panel.setLabelWidth("35%");
panel.setRows(7);
getChildren().add(panel);
form = (CoreForm)apps.createComponent(CoreForm.COMPONENT_TYPE);
form.setId("errForm");
panel.getChildren().add(form);
intext = (CoreInputText)apps.createComponent(CoreInputText.COMPONENT_TYPE);
intext.setId("name");
intext.setLabel("Name");
intext.setRendered(true);
intext.setRequired(true);
form.getChildren().add(intext);
description = (CoreInputText)apps.createComponent(CoreInputText.COMPONENT_TYPE);
description.setId("description");
description.setLabel("description");
description.setRendered(true);
description.setRequired(true);
description.setRows(3);
form.getChildren().add(1, description);
public boolean getRendersChildren() {
return true;
public void encodeChildren(FacesContext context) throws IOException {
// Encode the top most component
panel.encodeAll(context);
/* The below code can replace the encodeAll call
panel.encodeBegin(context);
if(panel.getRendersChildren()){
panel.encodeChildren(context);
panel.encodeEnd(context);
public String getFamily() {
return COMPONENT_TYPE;
==========================================================
Notice, you don't need any setters/getters for this object.
You will need the following tag file:
============= HelloUICompTag.java ========
package view.components.msg;
import javax.faces.webapp.UIComponentTag;
public class HelloUICompTag extends UIComponentTag{
public HelloUICompTag() {
public String getComponentType() {
return HelloUIComp.COMPONENT_TYPE;
public String getRendererType() {
// Self rendering components return null
return HelloUIComp.RENDERER_TYPE; // should be null
=========================================
You will need to update your faces.config file with the following entry. Notice you do not need an entry under render kit.
<component>
<component-type>com.mycompany.hello</component-type>
<component-class>view.components.msg.HelloUIComp</component-class>
</component>
Finally, you will need to create (or append to) a tag library
================== myTest.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/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
version="2.0" xmlns="http://java.sun.com/xml/ns/j2ee">
<display-name>tests</display-name>
<tlib-version>1.0</tlib-version>
<short-name>tests</short-name>
<uri>http://mycompany.mil/tests</uri>
<tag>
<name>hello</name>
<tag-class>view.components.msg.HelloUICompTag</tag-class>
<body-content>JSP</body-content>
</tag>
</taglib>
=============================================
Notice you don't need a custom renderer class. The component is self-redering.
To use the component, create a myTest.jspx file like the following:
============ myTest.jspx ===============
<?xml version='1.0' encoding='windows-1252'?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:afh="http://xmlns.oracle.com/adf/faces/html"
xmlns:af="http://xmlns.oracle.com/adf/faces"
xmlns:mebs="http://mycompany.com/tests">
<jsp:output omit-xml-declaration="true" doctype-root-element="HTML"
doctype-system="http://www.w3.org/TR/html4/loose.dtd"
doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"/>
<jsp:directive.page contentType="text/html;charset=windows-1252"/>
<f:view>
<afh:html>
<afh:head title="Testing Components">
<meta http-equiv="Content-Type"
content="text/html; charset=windows-1252"/>
</afh:head>
<afh:body>
<h:form>
<af:panelPage title="My Component Test">
<f:facet name="menu1"/>
<f:facet name="menuGlobal"/>
<f:facet name="branding"/>
<f:facet name="brandingApp"/>
<f:facet name="appCopyright"/>
<f:facet name="appPrivacy"/>
<f:facet name="appAbout"/>
<!--
Well, this is a bad place to put our component
This will render a <af:form> within the above <h:form>
Should be placed outside the h:form or edit the component and remove the form
-->
<mebs:hello/>
</af:panelPage>
</h:form>
</afh:body>
</afh:html>
</f:view>
</jsp:root>
===================================
Hope this helps you.
Maybe you are looking for
-
iPad has been disabled as kids have typed in wrong passcode too many times. Have tried to connect to iTunes to restore it but can't as PC says to enter passcode but I obviously can't as iPad is disabled. Any ideas ?
-
Create a Sales Order with Reference to Contract using IDoc / LSMW ( AFS )
Hi Gurus, I need to crate a Sales Order with reference to a Contract. I need to upload Sales Orders with reference to contract via LSMW. So far, I've been able to create the Sales Order with ref to contract. But, the Sales Order Quantity is not getti
-
Hi : I have a DELL Axim x30, that I have been using to read ebooks for years. I have Adobe reader for pocket pc installed on my device. I have been having problems with trying to load ePUB ebooks and PDF ebooks onto my device. I downloaded the latest
-
IWeb adds "extra" directory in some file paths
I'm helping a client create a podcast using iWeb. For the record, I have created several functional podcast sites using WordPress, so I'm not a novice. The podcast page is here: http://hauntingofcambria.com/Podcast/Podcast.html You can see that the p
-
Sample Code in BADI for Open Hub Services
Hi all, We have a requirement to extend(add few new fields and populate them using BADI) for the target structure of Infospoke in Open hub services. I have 2 issues which are stopping us to proceed further. 1. I did this by just add