Thread: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6

This question is not answered. Helpful answers available: 5. Correct answers available: 1.


Permlink Replies: 14 - Pages: 1 - Last Post: Oct 27, 2009 7:11 AM Last Post By: djazia
djazia

Posts: 61
Registered: 03/30/09
JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Sep 11, 2009 9:41 AM
 
Click to report abuse...   Click to reply to this thread Reply
After reading lots of furums blogs and so on, I managed to run an application on Tomcat using ADF and BC4J (built with JDev 11.1.1.1.0).
However, I still have few difficulties:
Tomcat 6.0.18 is using Jasper to compile JSP pages.
I have a pivot table with the attribute "sortMode" set to "none".
It works fine on WLS but when I deploy on Tomcat, I have a org.apache.jasper.JasperException: unknown attribute type (String) for the attribute sortMode.

Why do I have this behavior?
what compiler Jdeveloper/WLS are using to compile JSP?
Is there a way to use it with tomcat or to change Jasper on Tomcat or else so I don't have to modify my JSPx to deploy on Tomcat?

Jack

PS: As soon as I manage to succesfully deploy my application on Tomcat, I'll post all steps I used since lots of people are looking for solution to deploy on Tomcat.

euggie

Posts: 62
Registered: 01/23/08
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Sep 15, 2009 2:19 AM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
Jack, users of Tomcat will definately appreciate it. I guess though that ADF security won't work anyway
KUBA

Posts: 877
Registered: 11/18/05
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Sep 15, 2009 3:01 AM   in response to: euggie in response to: euggie
 
Click to report abuse...   Click to reply to this thread Reply
Hi,

+1

We also tried to deploy ADF 11.1.1.1.0 application on Tomcat 6 - with no success. All accurate description how to do it is very expected, because Oracle doesn't support this server officialy.

Kuba
djazia

Posts: 61
Registered: 03/30/09
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Sep 17, 2009 8:17 AM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
I finally managed to deploy my application into Tomcat 6.0.18.
I still have the issue of the "sortMode" attribute of my pivotTable been refused by Tomcat JSP compiler so I found a workaround by removing it from my JSP page and set it into my managed bean.

Here how I did it:

First of all, here a description of my application:
This a a web application using ADF components, mainly InputText, commandButton, table, popup, chooseDate, inputDate, selectManyShuttle, selectOneChoice and DVT pivotTable.
I'm also using backing beans, managed beans with view and session scopes.
My application have:
- a"OracleModel" project binded to a Oracle 10g DB using Entities and VO object to create, update delete Data from Oracle tables.
- a "SQLServerModel" project binded to a SQLServer using only VO objects in readonly mode.
- a "View" project containing all JSP, beans.

I created an extra project called "TomcatLibraries" which I use to package all my needed libraries to install on Tomcat.
Into this project I added into the "Libraries and ClassPath" tab of the "Project Properties" all the libraries existing into my "View" project.
This allow me to get all needed jars without spending time to look for them into all Jdev folders. I got this from Terry Cho's blog http://javamaster.wordpress.com/category/java-programming/

I added those extra jar files into it since Tomcat seems to need them:
- jrf-api.jar (found in MIDDLEWARE_HOME/jdeveloper/modules/oracle.jrf_11.1.1/)
- javax.transaction_1.0.0.0_1-1.jar (found in MIDDLEWARE_HOME/modules/)
- javax.management.j2ee_1.0.jar (found in MIDDLEWARE_HOME/modules/)

For developement purpose with Jdev I had a public_html/WEB-INF/lib folder into my View" project which contains those Jars:
- sqljdbc4.jar (jdbc to SQLServer)
- jsf-api.jar
- jsf-ri.jar

I created the identical folder into my "TomcatLibraries" and copied those 3 files.
Into the TomcatLibraries Project Properties, Deployment Tab, Edit default JAR Deployment Profile:
- In Web Files Filters, select all jars in WEB-INF/lib
- in WEB-INF/lib Contributors, select all Libraries except JSP Runtime
- in WEB-INF/lib Filters, make sure everything is selected.

Into my OracleModel and SQLServerModel project, I set the path of the JAR file into their default deployment profiles to create the jars into my public_html/WEB-INF/lib folder into my "View" Projects
Go into your Model Project Properties, Deployment Tab, Edit default JAR Deployment Profile and into JAR Options, change the path of the JAR File.
Run the deployement profile of the Model Projects once to create the jars into the View Project.

Into the "View" Project Properties,Deployment Tab, Edit default WAR Deployment Profile and in Profile Dependencies, select the Model JAR deployment profiles... unselect all the rest.
Still in WAR Deployment Profile,
- in Web Files Filters, deselect all Libraries in WEB-INF/lib except Model libraries. select those. Deselect also WEB-INF/classes.
- in WEB-INF/lib Contributors, deselect all Libraries (some you can't because theire grey out.. leave them as it is).
- in WEB-INF/lib Filters, deselect all jars
- In Platform, select Tomcat 6.x as Default Platform.
- In WAR Options, choose where you want your WAR to be created and give the name of the file such as APP_NAME.war. This APP_NAME will be used to access your application on Tomcat such as: http://TOMCAT_SERVER_IP:TOMCAT_PORT/APP_NAME/faces/home.jspx (usually, Tomcat port is 8080)

Make a full Clean
Make a full Build
Run the View deployment. This will create a WAR file with all your classes, JSPs, XML and your model jar only.

TOMCAT SETUP:
I am using jrmc-3.1.0-1.6.0-windows-ia32.exe as JRE. So I first install it at -YOUR_JRE_HOME-
Unzip Tomcat zip file into wanted location that I call -YOUR_CATALINA_HOME-
NOTICE: Tomcat has only my application deployed into it.
I can't garantee that this will work if other application are deployed. Tomcat Manager app works fine anyway.

Dana SingleTerry's blog helped me alot for this part: http://blogs.oracle.com/dana/2009/01/how_to_deploy_a_11g_adf_applic_1.html

Into CATALINA_HOME/lib:
created a folder "adf" into the folder CATALINA_HOME/lib
In this "adf" folder, put all adf libraries needed for the application. In my case, here the list of all librairies I needed:
- adf-controller-api.jar
- adf-controller-rt-common.jar
- adf-controller-schema.jar
- adf-controller.jar
- adf-dt-at-rt.jar
- adf-faces-databinding-rt.jar
- adf-pageflow-dtrt.jar
- adf-pageflow-fwk.jar
- adf-pageflow-impl.jar
- adf-pageflow-rc.jar
- adf-richclient-api-11.jar
- adf-richclient-impl-11.jar
- adf-share-base.jar
- adf-share-ca.jar
- adf-share-support.jar
- adf-transactions-dt.jar
- adfdt_common.jar
- adflogginghandler.jar
- adfm.jar
- adfmweb.jar
- adfsharembean.jar
- bc4j-mbeans.jar
- bc4jwizard.jar
- bundleresolver.jar
- cache.jar
- com.bea.core.apache.commons.collections_3.2.0.jar
- commons-cli-1.0.jar
- commons-el.jar
- db-ca.jar
- dms.jar
- dvt-databindings.jar
- dvt-faces.jar
- dvt-facesbindings.jar
- dvt-jclient.jar
- dvt-trinidad.jar
- dvt-utils.jar
- fmw_audit.jar
- glassfish.jsf_1.2.9.0.jar
- glassfish.jstl_1.2.0.1.jar
- groovy-all-1.6.0.jar
- identitystore.jar
- inspect4.jar
- jacc-spi.jar
- javatools-nodeps.jar
- javax.activation_1.1.0.0_1-1.jar
- javax.jsf_1.2.0.1.jar
- javax.jsp_1.1.0.0_2-1.jar
- javax.management.j2ee_1.0.jar
- javax.security.jacc_1.0.0.0_1-1.jar
- javax.servlet_1.0.0.0_2-5.jar
- javax.transaction_1.0.0.0_1-1.jar
- jdev-cm.jar
- jewt4.jar
- jmxframework.jar
- jmxspi.jar
- jps-api.jar
- jps-common.jar
- jps-ee.jar
- jps-internal.jar
- jps-unsupported-api.jar
- jrf-api.jar
- jsf-api.jar
- jsf-ri.jar
- jsp-el-api.jar
- ldapjclnt11.jar
- mdsrt.jar
- ojdbc6.jar
- ojdl.jar
- ojmisc.jar
- oracle-el.jar
- oracle.ucp_11.1.0.jar
- oraclepki.jar
- orai18n-collation.jar
- orai18n-mapping.jar
- orai18n-servlet.jar
- orai18n-translation.jar
- orai18n-utility.jar
- orai18n.jar
- org.apache.commons.beanutils_1.6.jar
- org.apache.commons.logging_1.0.4.jar
- osdt_cert.jar
- osdt_core.jar
- osdt_xmlsec.jar
- resourcebundle.jar
- share.jar
- sqljdbc4.jar
- trinidad-api.jar
- trinidad-impl.jar
- wls.jsf.di.jar
- xml.jar
- xmlef.jar
- xmlparserv2.jar

WARNING: due to missing class oracle.adf.controller.security.TaskFlowPermission into the new adf-controller-api.jar (JDev 11.1.1.1.0)
I replace it with the same library from Jdev 11.1.1.0.2 which still has this needed class.


Into CATALINA_HOME/conf:
file context.xml:
added those two lines into Context:
<ResourceLink global="jdbc/ConnectionOracleDS" name="jdbc/ConnectionOracleDS" type="oracle.jdbc.pool.OracleDataSource"/>
<ResourceLink global="jdbc/ConnectionSQLServerDS" name="jdbc/ConnectionSQLServerDS" type="javax.sql.DataSource"/>

file catalina.properties:
replace the line:
common.loader=${catalina.home}/lib,${catalina.home}/lib/*.jar

with the line:
common.loader=${catalina.home}/lib/adf,${catalina.home}/lib/adf/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar

This allow to load adf libraries before tomcat libraries since it caused some Exception when compiling JSP (I dunno why)

file server.xml:
I added the Database resource into the GlobalNamingResources:
<Resource auth="Container"
name="jdbc/ConnectionOracleDS"
type="oracle.jdbc.pool.OracleConnectionPoolDataSource"
factory="oracle.jdbc.pool.OracleDataSourceFactory"
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@-IP_DATABASE_ORACLE-:1521:ORCL"
user="-ORACLE_DB_USER-"
password="-ORACLE_DB_PASSWORD-"
databaseName="ORCL"
port="1521"
maxActive="20" maxIdle="2" maxWait="5000"/>
<Resource auth="Container"
name="jdbc/ConnectionSQLServerDS"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://-IP_DATABASE_SQLSERVER-:-PORT_DATABASE_SQLSERVER-;database=-DATABASE_NAME_SQLSERVER-"
username="SQLSERVER_DB_USER"
password="SQLSERVER_DB_PASSWORD"
maxActive="20" maxIdle="2" maxWait="5000"/>

where
-IP_DATABASE_ORACLE- is the IP of the oracle database
-ORACLE_DB_USER- is the oracle database user
-ORACLE_DB_PASSWORD- is the oracle database password
-IP_DATABASE_SQLSERVER- is the IP of the sqlserver database
-PORT_DATABASE_SQLSERVER- is the port of the database (usually 1433)
-DATABASE_NAME_SQLSERVER- is the schema of the database
-ORACLE_DB_USER- is the sqlserver database user
-ORACLE_DB_PASSWORD- is the sqlserver database password

Into CATALINA_HOME/bin:
I created my own Tomcat startup and shutdown .bat:
mystartup.bat:
set CATALINA_HOME=-YOUR_CATALINA_HOME-
set JRE_HOME=-YOUR_JRE_HOME-
set JAVA_OPTS=-Dfile.encoding=utf8
%CATALINA_HOME%\bin\startup.bat

same for myshutdown.bat:
set CATALINA_HOME=-YOUR_CATALINA_HOME-
set JRE_HOME=-YOUR_JRE_HOME-
%CATALINA_HOME%\bin\shutdown.bat

Into CATALINA_HOME/bin:
Create a folder "config" and put in it the file jps-config.xml which looks like:

<?xml version = '1.0' encoding = 'Cp1252'?>
<jpsConfig xmlns="http://xmlns.oracle.com/oracleas/schema/11/jps-config-11_1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/oracleas/schema/11/jps-config-11_1.xsd">
<propertySets/>
<serviceProviders>
<serviceProvider class="oracle.security.jps.internal.credstore.ssp.SspCredentialStoreProvider" name="credstore.provider" type="CREDENTIAL_STORE">
<description>Credential Store Service Provider</description>
</serviceProvider>
</serviceProviders>
<serviceInstances>
<serviceInstance provider="credstore.provider" name="credstore">
<property value="./" name="location"/>
</serviceInstance>
</serviceInstances>
<jpsContexts default="-APPLICATION_NAME-">
<jpsContext name="-APPLICATION_NAME-">
<serviceInstanceRef ref="credstore"/>
</jpsContext>
</jpsContexts>
</jpsConfig>

where
-APPLICATION_NAME- is the JDeveloper application name

I dunno why but if I don't create this folder and file, When deploying my application, I have a FileNotFoundException because it can't find this file into this particular folder.
I searched into this forum and in Google but coud'nt find a way to avoid that right now.
I created the folder and put my jps-config.xml file into it as a workaround for now on.

Start Tomcat with mystartup.bat
when Tomcat correctly started, put your app WAR file intoCATALINA_HOME/webapps and wait until Tomcat auto deploy it.

Check your app with the URL:
http://TOMCAT_SERVER_IP:TOMCAT_PORT/APP_NAME/faces/home.jspx (usually, Tomcat port is 8080)
where APP_NAME is the file name of your WAR file (without the .war of course *grin*)

Here we go..

I haven't tested all possibilities, may be sometimes I'm doing useless stuff ... it is just I spent lots of time trying various things that I lost track of what I should really do (also sometimes forgot why I should do it *grin*) and what was useless.

I also explained SQLServer configuration to show that Tomcat + SQLServer + JDev works fine.

Anyway, this works for me so I hope this will help few of you.
Don't hesitate for questions or more info if I can help you.

Jack

user10657708

Posts: 3
Registered: 11/27/08
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Sep 29, 2009 2:12 AM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
Hi Jack,

I tried as per the steps provided by you to deploy an ADF application to Tomcat, but I am getting this error when I am running the page.

org.apache.jasper.el.JspPropertyNotFoundException: /Home.jspx(22,64) '#{bindings.Id.inputValue}' Target Unreachable, identifier 'bindings' resolved to null
at org.apache.jasper.el.JspValueExpression.isReadOnly(JspValueExpression.java:74)
at oracle.adfinternal.view.faces.renderkit.rich.EditableValueRenderer.getReadOnly(EditableValueRenderer.java:400)
at oracle.adfinternal.view.faces.renderkit.rich.FormElementRenderer.renderAsElement(FormElementRenderer.java:211)
at oracle.adfinternal.view.faces.renderkit.rich.LabeledInputRenderer.getEncodeClientMetadata(LabeledInputRenderer.java:111)
at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1065)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeFormItem(PanelFormLayoutRenderer.java:1015)
at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.access$100(PanelFormLayoutRenderer.java:46)
at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1510)
at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1429)
at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:125)
at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:201)
at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:167)
at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeChildren(PanelFormLayoutRenderer.java:352)
at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.encodeAll(PanelFormLayoutRenderer.java:187)
at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1187)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:432)
at oracle.adfinternal.view.faces.renderkit.rich.FormRenderer.encodeAll(FormRenderer.java:221)
at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1187)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:432)
at oracle.adfinternal.view.faces.renderkit.rich.DocumentRenderer.encodeAll(DocumentRenderer.java:820)
at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1187)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
at org.apache.myfaces.trinidad.component.UIXComponentBase.__encodeRecursive(UIXComponentBase.java:1494)
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeAll(UIXComponentBase.java:771)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:942)
at com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:271)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:202)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:189)
at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:193)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:685)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:261)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:193)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:85)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:54)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
at java.lang.Thread.run(Unknown Source)

any help will be appreciated.........

djazia

Posts: 61
Registered: 03/30/09
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Sep 29, 2009 2:45 AM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
org.apache.jasper.el.JspPropertyNotFoundException: /Home.jspx(22,64) '#{bindings.Id.inputValue}' Target Unreachable, identifier 'bindings' resolved to null

Seems it doesn't find the binding of your page
Chexk if you have the file "DataBindings.cpx" with your "HomePageDefr.xml" defined into it properly.
Also check the presence of your "HomePageDef.xml" file.

If not, you may verify that your deployment profile deploys them:
into Project Properties, Deployment, WEB-INF/classes, Filter... check that those files are selected

Jack

Edited by: djazia on 29 sept. 2009 10:54
firstanswer was wrong cause I read to fast... corrected it

user10657708

Posts: 3
Registered: 11/27/08
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Sep 29, 2009 3:12 AM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
Hi Jack,

Thanks for you quick response..........

The databindings.cpx is there along with HomePageDef.xml, also the mapping is there of HomePageDef.xml in Databindings.cpx.

Even I checked the deployment profile, these files are selected.

Thanks,

Sandeep

djazia

Posts: 61
Registered: 03/30/09
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Sep 29, 2009 5:26 AM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
Is your page working fine when running on JDev?

Jack
djazia

Posts: 61
Registered: 03/30/09
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Sep 29, 2009 5:36 AM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
I managed to reproduce your error on my Tomcat by removing the adf-faces-databinding-rt.jar library from my tomcat adf lib folder.
Check if you've got it.

Jack

user10657708

Posts: 3
Registered: 11/27/08
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Oct 14, 2009 11:54 PM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
Hi jack,

Thanks for your support, I am able to run the page after adding the jar and few additional jars, Now I am able to view the UI.

Now, There is one more problem, when I do something on the page (I am accessing one managed bean) it is erroring out.

I am using a managed bean named "MyBean" with scope as "request". I believe there is some problem with Bean initilization or

may be I am missing some jar required in order to use beans.

Here is the complete error......

javax.servlet.ServletException: /Home.jspx(61,55) '#{MyBean.enableAll}' Target Unreachable, identifier 'MyBean' resolved to null
javax.faces.webapp.FacesServlet.service(FacesServlet.java:270)
oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:85)
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:54)
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)

root cause

javax.faces.el.EvaluationException: /Home.jspx(61,55) '#{MyBean.enableAll}' Target Unreachable, identifier 'MyBean' resolved to null
org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:58)
org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1245)
org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:673)
oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:273)
oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:165)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:85)
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:54)
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
djazia

Posts: 61
Registered: 03/30/09
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Oct 23, 2009 6:21 AM   in response to: user10657708 in response to: user10657708
 
Click to report abuse...   Click to reply to this thread Reply
hello

seems to me that you are still missing JARs into your path.
I am also using Managed beans also backing beans and it is working fine for me with the above describe JAR list.

Check your JAR list against my list and add missing jars.

Jack
tag

Posts: 47
Registered: 04/07/09
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Oct 27, 2009 6:41 AM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
Hi everyone. I have the same error as user10657708, when I'm trying to deploy ADF app with JSF & EJB on glassfish AS:

javax.el.PropertyNotFoundException: Target Unreachable, identifier 'bindings' resolved to null
at com.sun.el.parser.AstValue.getTarget(AstValue.java:84)
at com.sun.el.parser.AstValue.isReadOnly(AstValue.java:149)
at com.sun.el.ValueExpressionImpl.isReadOnly(ValueExpressionImpl.java:248)
at oracle.adfinternal.view.faces.renderkit.rich.EditableValueRenderer.getReadOnly(EditableValueRenderer.java:400)
at oracle.adfinternal.view.faces.renderkit.rich.FormElementRenderer.renderAsElement(FormElementRenderer.java:211)
at oracle.adfinternal.view.faces.renderkit.rich.LabeledInputRenderer.getEncodeClientMetadata(LabeledInputRenderer.java:111)
at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1065)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
...

Did somebody manage to work out this error?
djazia

Posts: 61
Registered: 03/30/09
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Oct 27, 2009 6:57 AM   in response to: tag in response to: tag
 
Click to report abuse...   Click to reply to this thread Reply
Try adding the adf-faces-databinding-rt.jar library into your classpath.
This resolved user10657708 first case.

Jack
tag

Posts: 47
Registered: 04/07/09
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Oct 27, 2009 7:04 AM   in response to: djazia in response to: djazia
 
Click to report abuse...   Click to reply to this thread Reply
Thanks for responce, but I already have this library in my app.
djazia

Posts: 61
Registered: 03/30/09
Re: JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6
Posted: Oct 27, 2009 7:11 AM   in response to: tag in response to: tag
 
Click to report abuse...   Click to reply to this thread Reply
Yes but are you sure it is in the classpath?
also make sure that it is at the beginning of the classpath too since since the JVM loads libraries according to their place into the classpath.

Jack
Legend
Guru Guru : 2500 - 1000000 pts
Expert Expert : 1000 - 2499 pts
Pro Pro : 500 - 999 pts
Journeyman Journeyman : 200 - 499 pts
Newbie Newbie : 0 - 199 pts
Oracle ACE Director
Oracle ACE Member
Oracle Employee ACE
Helpful Answer (5 pts)
Correct Answer (10 pts)

Point your RSS reader here for a feed of the latest messages in all forums