ADF loggers Vs Log4j
Hi,
We are using WebCenter Portal PDK application. Which approch is recommended here for logging. Any Pros or Cons. Please find below the high level requirements
* clustered logging
* Module wise logging
* setting logging levels like info, debug
Thanks,
Vishnu
Hi.
Pros to use ADFLogger:
- You can control trace level in Oracle Fusion Middleware Console (Enterprise Manager) with a visual interface.
- You have support by Oracle if you are having problems with logging solution.
- You have an ADFLogger for JavaScript too.
- Have more trace level's than log4j.
Cons to use ADFLogger:
- You need to associate ADF libraries to your PDK's.
Pros to use log4j:
- Best known for most developers.
- Easy to set different log strategies and file sizes.
- Goog performance.
- Easy to extend and use Wrappers with it.
Cons to use log4j:
- You can't control trace level with visual interface provided by Oracle. You need to change manually log4j.properties
- You haven't Oracle Support for log4j.
It's only my own opinion.
To me is recommended to use ADFLogger if you are in ADF Application. If you are in a JSR-168 or another application use log4j instead of ADFLogger.
Regards. Daniel
Similar Messages
-
ADF Logger in Production environment
Hi all,
By using the jdeveloper i have developed a web application which is using the adf loggers.i deployed this SIT environment and made entry to the logging.xml in the weblogic server.
But when ever they restart the server logging.xml is getting over written and the entry i made is getting deleted.
How can i configure this with in my application.
Thanks in advance
Edited by: 926968 on Jul 5, 2012 4:31 AMHi Rakesh,
Make sure you have migrated the policy store to the production server. When Weblogic Server is running in production mode, automatic credential overwrite is not allowed. From the developer's guide:
When the target server is configured for production mode, you typically handle the migration task outside of JDeveloper using tools like Oracle Enterprise Manager. For details about using tools outside of JDeveloper to migrate the policy store to the domain-level in a production environment, see the Oracle Containers for J2EE Security Guide. Note that Oracle WebLogic Server running in production mode does not support the overwriting of system credentials under any circumstances.http://docs.oracle.com/cd/E26098_01/web.1112/e16182/adding_security.htm#CDDGFDFH
HTH,
Joonas -
Log4j problem; please help
Hi, I am new to Log4j and i have a question.
I have an WAR file that contains a log4j proerpties file.
<myapp.war>/WEB-INF/classes/log4j.properties
This WAR file is deployed to a BEA Weblogic cluster with 2 BEA managed instances.
Problem: Both these BEA instances right the log4j logging information to a same file (application-server.log).
I wanted these 2 BEA instances to right their logs to their respective log files rather than combining into one.
Please advise how to separate the logging of these 2 instances into 2 different files.
Here is my log4j.properties.
#################################### LOGGERS
###### Default
log4j.rootLogger=ERROR, CONSOLE, APPLICATION_SERVER
log4j.debug=true
###### 3rd-Party Loggers
log4j.logger.org.apache=ERROR
###### Appian Loggers
log4j.logger.com.myappscorp=ERROR
# Note: To add a more specific logger, drill down to the class package.
# E.g. log4j.logger.com.myappscorp.process=DEBUG
#################################### APPENDERS
###### CONSOLE appender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
###### APPLICATION_SERVER file appender
log4j.appender.APPLICATION_SERVER=org.apache.log4j.RollingFileAppender
log4j.appender.APPLICATION_SERVER.layout=org.apache.log4j.PatternLayout
log4j.appender.APPLICATION_SERVER.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
log4j.appender.APPLICATION_SERVER.File=/opt/myapps/myapps56/logs/application-server.log
log4j.appender.APPLICATION_SERVER.MaxFileSize=10MB
log4j.appender.APPLICATION_SERVER.MaxBackupIndex=1000Here you go ..................
# LOG FILE CONFIGURATION
# Rolling appender logger for ITIM
log4j.rootCategory=DEBUG, Logger
#Levels of Logging INFO: info and fatal FATAL: fatal only
# DEBUG: debug, info and fatal WARN: fatal only
# Rolling file appender used for logging.
log4j.appender.Logger=org.apache.log4j.RollingFileAppender
#UAT
log4j.appender.Logger.File=/mylogs/myapp/app.log
log4j.appender.Logger.MaxFileSize=2MB
log4j.appender.Logger.MaxBackupIndex=10
#log4j.appender.Logger.DatePattern='.'yyyy-MMM-dd
log4j.appender.Logger.layout=org.apache.log4j.PatternLayout
log4j.appender.Logger.layout.ConversionPattern=%d{yyyy MMM dd HH:mm:ss,SSS} %-5p : %m%nnull -
Hi,
I have an ADF JSF EJB under JDEV 11.1.1.2.0
I need to know what logging system should I use.
The compatibility and performance is a must.
I came across these loggers:
1- ADF Logger
2- LOG4J
3- java.util.logging
4- Apache commons Logging
What is the best logging tool to use.
The application is not necessarily deployed under WLS.
Thank youWithout wanting to turn this into a my-logger-is-better-than-yours debate, I get the feeling logback is a much better option than log5j. It's native, which makes it much faster than log4j, and was created by the original log4j developer. I'm looking at Log5j and it appears to be a simple wrapper over log4j.
The ADF logger is good, but it introduces an ADF-dependency on code that might be refactored into non-adf-specific code in the future? shrug :)
Edited by: cafelatte on Mar 16, 2010 12:33 PM -
hi,
i am currently exploring on what approach to use for logging messages for my application. i am using the sun one appserver and stateless ejb's. may i know the best logging approach for ejb's? is there a logging software that would require less coding for logs? thanks.
regards,
andrewWell, that's not quite fair. With Commons Logging you can use log4j, or jdk1.4 logging, or build your own logger. You're still tied into the Commons Logging system (as much as you're tied into anything) but it's more flexible than log4j specifically.
IIRC you can build adaptors to use other loggers into log4j as well, but it's tricker. Commons Logging makes it easier, but has the overhead of requiring another layer to your configuration.
Like everything it's a tradeoff. -
Hi,
I have a problem using log4j with apache commons logging for my application logging.
I use JDeveloper/ADF recent version...
This is my code:
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class MyClass{
/** Der LOGGER */
private Log logger = LogFactory.getLog(this.getClass().getName());
First time I start my app it works, I cann see the logging output in the JDeveloper console.
But - after restarting the app (redeploy) nothing is displayed to the console.
I have to restart the server every time I changed something in the code to see the logging output :-(
Anybody who can help me ?
Thanks in advance,
goog morning from Germany !...when I start my app, I get this message:
<11.11.2010 16:44 Uhr MEZ> <Notice> <LoggingService> <BEA-320400> <The log file C:\Dokumente und Einstellungen\X\Anwendungsdaten\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log will be rotated. Reopen the log file if tailing has stopped. This can happen on some platforms like Windows.>
<11.11.2010 16:44 Uhr MEZ> <Notice> <LoggingService> <BEA-320401> <The log file has been rotated to C:\Dokumente und Einstellungen\X\Anwendungsdaten\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log00183. Log messages will continue to be logged in C:\Dokumente und Einstellungen\X\Anwendungsdaten\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log.>
<11.11.2010 16:44 Uhr MEZ> <Notice> <LoggingService> <BEA-320400> <The log file C:\Dokumente und Einstellungen\X\Anwendungsdaten\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\access.log will be rotated. Reopen the log file if tailing has stopped. This can happen on some platforms like Windows.>
<11.11.2010 16:44 Uhr MEZ> <Notice> <LoggingService> <BEA-320401> <The log file has been rotated to C:\Dokumente und Einstellungen\X\Anwendungsdaten\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\access.log00142. Log messages will continue to be logged in C:\Dokumente und Einstellungen\X\Anwendungsdaten\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\access.log.>
<11.11.2010 16:44 Uhr MEZ> <Notice> <LoggingService> <BEA-320400> <The log file C:\Dokumente und Einstellungen\X\Anwendungsdaten\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultDomain.log will be rotated. Reopen the log file if tailing has stopped. This can happen on some platforms like Windows.>
<11.11.2010 16:44 Uhr MEZ> <Notice> <LoggingService> <BEA-320401> <The log file has been rotated to C:\Dokumente und Einstellungen\X\Anwendungsdaten\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultDomain.log00143. Log messages will continue to be logged in C:\Dokumente und Einstellungen\X\Anwendungsdaten\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultDomain.log.>
IntegratedWebLogicServer startup time: 34187 ms.
Oracle about BEA-320400:
http://download.oracle.com/docs/cd/E12839_01/apirefs.1111/e14397/LoggingService.html
is this an idication, why i lose the log output after redeploy? -
Hi
I'm trying to get Log4J to work in my UIX ADF application. However, it seems that the Struts Controller is struggling to find the org.apache.commons.logging classes as I'm getting:
500 Internal Server Error
java.lang.NoClassDefFoundError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpApplication.loadServlet(HttpApplication.java:2028)
at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpApplication.findServlet(HttpApplication.java:4523)
at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpApplication.getRequestDispatcher(HttpApplication.java:2561)
at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:640)
at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)
at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Unknown Source)
It all compiles OK in JDeveloper and I've got the log4j jar in the deployment profile, so not sure what the problem is....
Any ideas??
ChrisHi Chris,
This is more of a OC4J Issue than a UIX issue.
Kindly follow this url
Re: Standalone OC4J 10g log4j problem
- It should give more clues.
Look at the suggestion at the end of the post and i think that should help you resolve your issue.
Regards,
Vijay V -
I'm having trouble with log4j. I want to create 2 loggers to log to 2 seperate files. I've read the documentation at http://logging.apache.org/log4j/1.2/manual.html but it is too brief and only covers basic logging using a single logger. I've read all the articles recommended in http://logging.apache.org/log4j/1.2/publications.html but they seem mainly to be a rehash of the manual page.
Does anybody know where I can find good, detailed documentation of log4j, or maybe they can point out why my test app isn't working.
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class LogTest
public static void main(String[] args)
Logger logger1 = Logger.getLogger("Logger1");
Logger logger2 = Logger.getLogger("Logger2");
PropertyConfigurator.configure("log4j.properties");
logger1.info("logging to logger 1");
logger2.info("logging to logger 2");
}Contents of my log4j.properties file;
#Define logger 1 as A1
log4j.Logger1=A1
#Configure A1
log4j.appender.A1=org.apache.log4j.FileAppender
log4j.appender.A1.File=log1.log
log4j.appender.A1.Append=true
log4j.appender.A1.Threshold=INFO
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{HH:mm:ss dd/MM/yyyy} [%t] %-5p %c %x - %m%n
#Define logger 2 as A2
log4j.Logger2=A2
#Configure A2
log4j.appender.A2=org.apache.log4j.FileAppender
log4j.appender.A2.File=log2.log
log4j.appender.A2.Append=true
log4j.appender.A2.Threshold=INFO
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%d{HH:mm:ss dd/MM/yyyy} [%t] %-5p %c %x - %m%nWhen I run I get;
log4j:WARN No appenders could be found for logger (Logger1).
log4j:WARN Please initialize the log4j system properly.and no log files are created.
Edited by: Nelbins on 30-Apr-2008 12:30to associate a Logger with an appender you need something like this:
log4j.logger.Logger1=DEBUG,A1
log4j.logger.Logger2=INFO,A2I.e. prefix the Logger name with "log4j.logger" and use "<logger level>,<appender>" as the value. -
I was curious if anyone has been able to get multiple log4j loggers to work with weblogic? I have configured my domains
to use log4j for logging and it appears to be functioning correctly. I am trying to use multiple loggers to send send system logs to the localhost and auditing log events to a remote host (using log4j syslogappender). A subset of my log4j.properties is shown below
system.log.level=DEBUG
log.dir=Logs
max.filesize=10MB
log4j.rootLogger=${system.log.level}, systemLogFile, stdout
log4j.logger.audit=INFO, syslog
log4j.additivity.audit=false
log4j.appender.syslog=org.apache.log4j.net.SyslogAppender
log4j.appender.syslog.SyslogHost=RemoteAuditRepositoryHost
log4j.appender.syslog.layout=org.apache.log4j.EnhancedPatternLayout
log4j.appender.syslog.layout.ConversionPattern=%d{${datestamp}} [%t] %-5p %c : %m%n
log4j.appender.syslog.Facility=local2
If I use this configuration the syslogd on my remote host receives nothing. I can get it too work if I move the syslog appender
into the root logger but then it receives a lot of other logging Id rather not receive. I am using log4j 1.2.16 and Weblogic 10.3.Here's my test version that works correctly:class SubClass {
private Logger log;
public SubClass(String name) {
// Create the appender
RollingFileAppender appender = new RollingFileAppender();
appender.setLayout(new PatternLayout("%d{DATE} %-5p [" + name
+ "] - %m%n"));
appender.setFile("C:/temp/" + name + ".txt");
appender.activateOptions();
// Create logger
log = Logger.getLogger("SubClass." + name);
log.addAppender(appender);
public void writeToLog(String txt) {
log.info(txt);
}I don't have this "policy" business in my version of Log4J so I simplified your code a bit. My version produces two different log files with one line in each file. -
Log4j and multiple loggers/appenders
Hello,
I have a class that is instantiated multiple times. Each instance needs to write to a separate file which has to be rolled daily.
The example below instantiates SubClass twice; both log files are created successfully -2007-05-09_sc1.log and 2007-05-09_sc2.log-, but the output goes only to 2007-05-09_sc2.log with the following:
09 May 2007 15:00:05,953 INFO [sc2] - writing to class sc1
09 May 2007 15:00:05,953 INFO [sc2] - writing to class sc2
... while 2007-05-09_sc1.log is empty.
Could someone please point out what am I doing wrong?
Thanks in advance.
import org.apache.log4j.Logger;
import org.apache.log4j.PatternLayout;
import org.apache.log4j.rolling.RollingFileAppender;
import org.apache.log4j.rolling.TimeBasedRollingPolicy;
public class LogTest
public static void main(String[] args)
SubClass sc1 = new SubClass("sc1");
SubClass sc2 = new SubClass("sc2");
sc1.writeToLog("writing to class sc1");
sc2.writeToLog("writing to class sc2");
class SubClass
private String name;
private static Logger log;
public SubClass( String name )
this.name = name;
// Create policy
TimeBasedRollingPolicy policy = new TimeBasedRollingPolicy();
policy.setFileNamePattern("logs/%d{yyyy-MM-dd}_" + name + ".log.zip");
policy.activateOptions();
// Create the appender
RollingFileAppender appender = new RollingFileAppender();
appender.setLayout(new PatternLayout("%d{DATE} %-5p [" + name+ "] - %m%n"));
appender.setRollingPolicy(policy);
appender.activateOptions();
// Create logger
log = Logger.getLogger("SubClass." + name);
log.addAppender(appender);
public void writeToLog( String txt )
log.info(txt);
}Here's my test version that works correctly:class SubClass {
private Logger log;
public SubClass(String name) {
// Create the appender
RollingFileAppender appender = new RollingFileAppender();
appender.setLayout(new PatternLayout("%d{DATE} %-5p [" + name
+ "] - %m%n"));
appender.setFile("C:/temp/" + name + ".txt");
appender.activateOptions();
// Create logger
log = Logger.getLogger("SubClass." + name);
log.addAppender(appender);
public void writeToLog(String txt) {
log.info(txt);
}I don't have this "policy" business in my version of Log4J so I simplified your code a bit. My version produces two different log files with one line in each file. -
How can i built a java application using java debug class on Log4J
Hi,
As java API support the MethodEntryEvent, using which I can get the automatic logging statements when the method is entered or exited as HelloExample.main(with argument type).
Where HelloExample is the class name.
Main is the method entered with its argument types.
In some cases I have the o/p as
-- VM Started --
====== main ======
main -- HelloExample
callerMethod -- HelloExample
====== main end ======
-- The application exited --
By using Log4J is there any possibility of getting these sort of o/p along with the loggers supported by Log4J. i mean to say can i built an java application which supports the MethodEntryEvent and MethodExitEvent from java API and also uses the Log4J debugging. I took an e.g. trace example, which (in J2SE 1.4.x or 5.x) will be found in $JAVA_HOME/demo/jpda/examples.jar and unpacking it by
jar -xvf $JAVA_HOME/demo/jpda/examples.jar i found the com/sun/tools/example/trace/Trace.java and passed the class constructed with logger taken from Log4J. In this case the logging message is displayed on the console. As per the requirement i need to transfer the whole o/p to an output file along with Log4J logger statements. in this case i should not give any command in the cosule except compiling and executing the programme. the programm also should able to run without the main() as i need to integrate Log4J with an application and the code must me application server independent. i need the output as i got using MethodEnteryEvent (shown as above) in case of java application built using Log4J.
Can any one help me in this regard. can any one give me some suggestion or any programme of this sort. All suggestions are welcomed.
Thanks & Regards,hi,
can someone help me how to implement logging for method entry parameters and
method exit return value.
can someone help me how to use log4j and integrate it to the method entry
logging and method exit logging.
Here what i need is without writing the log statements for the method entry and
method exit i need to log it to the file
along with other log4j debug statements i provide in the file.I should be able
to configure whether to enable/disable the logging
for method entry and method exit. In method entry i should be able to log the
parameters the method take and in method exit
i should be able to log te return value to the log file, before the method is
returned to the callee.
i hope i am clear
Thanks in advance. -
Java.lang.UnsupportedClassVersionError with ADF and Websphere
I'm trying to get an app running with ADF/Tomahawk/MyFaces/Facelets going on Websphere 6.0. However Websphere is running with a 1.4.2 JVM instead of 1.5 so I get an error when it comes to the ADF NavigationHandlerImpl which has been built with Java 1.5. Is there a Java 1.4 version of ADF faces I should have downloaded somewhere?
Hints appreciated.
Regards, Murray
==<logs below >=================================
[5/4/06 13:15:47:816 GMT] 00000011 FacesConfigur I Reading config /WEB-INF/faces-config.xml
[5/4/06 13:15:48:236 GMT] 00000011 WebApp E LinkageError while defining class: oracle.adfinternal.view.faces.application.NavigationHandlerImpl
Could not be defined due to: oracle/adfinternal/view/faces/application/NavigationHandlerImpl (Unsupported major.minor version 49.0)
This is often caused by having a class defined at multiple
locations within the classloader hierarchy. Other potential causes
include compiling against an older or newer version of the class
that has an incompatible method signature.
Dumping the current context classloader hierarchy:
==> indicates defining classloader
==>[0]
com.ibm.ws.classloader.CompoundClassLoader@7d4e3ab9
Local ClassPath: C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\classes;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\activation-1.0.2.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\adf-facelets.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\adf-faces-api-ea20-SNAPSHOT.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\adf-faces-impl-ea20-SNAPSHOT.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\aui.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\common-annotations.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\commons-beanutils-1.7.0.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\commons-codec-1.3.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\commons-collections-3.1.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\commons-digester-1.6.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\commons-el-1.0.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\commons-fileupload-1.1.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\commons-io-1.2.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\commons-lang-2.1.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\commons-logging-1.0.4.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\el-api.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\el-ri.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\jsf-facelets1014.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\jsp-api.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\jstl-1.1.0.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\log4j-1.2.13.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\mob-impl-files.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\mob-layer-interfaces.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\mob-layer-standalone.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\myfaces-api-1.1.3-SNAPSHOT.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\myfaces-impl-1.1.3-SNAPSHOT.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\portlet.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\serializer.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\tomahawk-1.1.2-SNAPSHOT.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\xalan.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\xercesImpl.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\xml-apis.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\xpp3_min-1.1.3.4.O.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\xstream-1.1.3.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war\WEB-INF\lib\xstream-with-attributes.jar;C:\apps\WebSphere60\profiles\default\installedApps\localhostNode01Cell\aui_war.ear\aui.war;
Delegation Mode: PARENT_FIRST
[1] com.ibm.ws.classloader.JarClassLoader@630356666 Local Classpath: Delegation mode: PARENT_FIRST
[2] com.ibm.ws.classloader.ProtectionClassLoader@2333faba
[3] com.ibm.ws.bootstrap.ExtClassLoader@7f427ab8
[4] sun.misc.Launcher$AppClassLoader@7f4cbab8
[5] sun.misc.Launcher$ExtClassLoader@7f30bab8
---Original exception---
java.lang.UnsupportedClassVersionError: oracle/adfinternal/view/faces/application/NavigationHandlerImpl (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java(Compiled Code))
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java(Compiled Code))
at com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:576)
at com.ibm.ws.classloader.CompoundClassLoader.findClass(CompoundClassLoader.java(Compiled Code))
at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:414)
at java.lang.ClassLoader.loadClass(ClassLoader.java(Compiled Code))
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:260)
at org.apache.myfaces.shared_impl.util.ClassUtils.classForName(ClassUtils.java:131)
at org.apache.myfaces.shared_impl.util.ClassUtils.simpleClassForName(ClassUtils.java:157)
at org.apache.myfaces.config.FacesConfigurator.getApplicationObject(FacesConfigurator.java:521)
at org.apache.myfaces.config.FacesConfigurator.configureApplication(FacesConfigurator.java:448)
at org.apache.myfaces.config.FacesConfigurator.configure(FacesConfigurator.java:131)
at org.apache.myfaces.webapp.StartupServletContextListener.initFaces(StartupServletContextListener.java:66)
at org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:49)
at com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:1355)
at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:371)
at com.ibm.ws.webcontainer.webapp.WebGroup.addWebApplication(WebGroup.java:114)
at com.ibm.ws.webcontainer.VirtualHost.addWebApplication(VirtualHost.java:127)
at com.ibm.ws.webcontainer.WebContainer.addWebApp(WebContainer.java:776)
at com.ibm.ws.webcontainer.WebContainer.addWebApplication(WebContainer.java:729)
at com.ibm.ws.runtime.component.WebContainerImpl.install(WebContainerImpl.java:140)
at com.ibm.ws.runtime.component.WebContainerImpl.start(WebContainerImpl.java:360)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1019)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1028)
at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:538)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:724)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:683)
at com.ibm.ws.runtime.component.ApplicationMgrImpl$AppInitializer.run(ApplicationMgrImpl.java:1678)
at com.ibm.ws.runtime.component.ComponentImpl$_AsynchInitializer.run(ComponentImpl.java:304)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1332)Hi,
you will have to compile the application with JDK 1.4 in this case. This should work for JSF and ADF Faces.
Frank -
Hi,
I am new to ADF and my company is also new to ADF. We are doing how it coudl help us in acclerating the development of custom screens on top of OTM 5.5
I am using OAS 10.1.3. I am getting org/apache/log4j/Category error at the time of deployment causing road block. Plz help...
Below are the steps I followed
1. Stopped OAS
2. Install ADF Installer 10.1.3.5 by extracting files, changing adfinstaller.properties, and running java -jar runinstaller.jar adfinstaller.properties
3. Started OAS
4. OAS never started up as server.xml had an new entry
<application name="datatags" path="../../../BC4J/redist/datatags.ear" start="true" />
<import-shared-library name="oracle.ws.jaxrpc"/>
5. datatags directory was malformed in the sense META-INF/application.xml and other .xml file was not created at all.
6. Since ADF requires only libraries to be available, I removed this 2 enteries and started up the OAS.
7. Started the OAS
8. Copied files from
[$Jdeveloper Home]\jakarta-taglibs
to
[$OC4J Home]\BC4J\lib
the files are:
commons-digester.jar
commons-logging.jar
commons-collections.jar
9. Download and copy apache-log4j-1.2.15 (log4j-1.2.15.jar) to [$OC4J Home]\BC4J\lib
10. I created a simpel ADF Helloworld page.
11.Created a deployment discriptor orion-application and added the following enteries
<imported-shared-libraries>
<remove-inherited name="apache.commons.logging"></remove-inherited>
</imported-shared-libraries>
12. I right clicked on my UserInterface ->New-> Deployment profile -> Created a WAR file
13. Right click the WAR file and deployed to the OAS
14. I got the following deployment error
Wrote EAR file to C:\shobz\SOFTWARES\otm_jdev_10G\jdev\mywork\TestADF\UserInterface\deploy\webapp1.ear
Uploading file webapp1.ear ...
Uploading file webapp1.ear ...
Uploading file webapp1.ear ...
Uploading file webapp1.ear ...
Uploading file webapp1.ear ...
Uploading file webapp1.ear ...
Uploading file webapp1.ear ...
Uploading file webapp1.ear ...
Application Deployer for webapp1 STARTS.
Copy the archive to /u01/app/otm/otmapp/oas/j2ee/home/applications/webapp1.ear
Initialize /u01/app/otm/otmapp/oas/j2ee/home/applications/webapp1.ear begins...
Unpacking webapp1.ear
Done unpacking webapp1.ear
Unpacking webapp1.war
Done unpacking webapp1.war
Initialize /u01/app/otm/otmapp/oas/j2ee/home/applications/webapp1.ear ends...
Starting application : webapp1
Initializing ClassLoader(s)
Initializing EJB container
Loading connector(s)
Starting up resource adapters
Initializing EJB sessions
Committing ClassLoader(s)
Initialize webapp1 begins...
Initialize webapp1 ends...
Started application : webapp1
Binding web application(s) to site default-web-site begins...
Binding webapp1 web-module for application webapp1 to site default-web-site under context root TestADF-UserInterface-context-root
Operation failed with error:
org/apache/log4j/Category
Deployment failed
I tried step 9 and 11 in order to get rid of this log4j error.
Your help is highly appreciated.
Shobz
Edited by: user13114596 on Jan 6, 2011 8:40 PMADF 11g requires JEE 5.0 server.
Oracle Application Server 10.1.3 supports J2EE 1.4.
JDeveloper 11g application won't run on OAS 10.1.3. -
Problem in navigation of portletized JSf application using ADF on portal
Hi All,
I am implementing a simple scenario wherein i have an ADF Business Component (a simple drop down) and a command button. On click of the button, there is a navigation from one jsp to another.
I am able to portletize a simple application using ADF Business Component.It runs fine when run on local.
But when i put it on portal, navigation does not work.the control is not transferred to the method of backing bean.It is not showing loggers either.
jdev version :10.1.3.3
oracle portal :10.1.4
Standalone OC4j : 10.1.3
If any one has working model of this, can you pls post the files used.
Also , if anyone has work around for same, it will be helpful.Thanks.
Portlet.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<portlet-app version="1.0"
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"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
id="com.vodacom.portlet.ServiceFaultPortlet.af7cec80b0013456">
<portlet>
<portlet-name>ServiceFault</portlet-name>
<display-name>ServiceFault</display-name>
<portlet-class>oracle.portlet.server.bridges.jsf.FacesPortlet</portlet-class>
<init-param>
<name>DefaultPage.view</name>
<value>/index.jspx</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>Service Faults</title>
<short-title>Service Faults</short-title>
</portlet-info>
</portlet>
</portlet-app>
faces-config.xml
<?xml version="1.0" encoding="windows-1252"?>
<!DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
<faces-config xmlns="http://java.sun.com/JSF/Configuration">
<managed-bean>
<managed-bean-name>Index</managed-bean-name>
<managed-bean-class>view.backing.Index</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<!--oracle-jdev-comment:managed-bean-jsp-link:1index.jspx-->
</managed-bean>
<lifecycle>
<phase-listener>oracle.adf.controller.faces.lifecycle.ADFPhaseListener</phase-listener>
</lifecycle>
<application>
<default-render-kit-id>oracle.adf.core</default-render-kit-id>
</application>
<navigation-rule>
<from-view-id>/index.jspx</from-view-id>
<navigation-case>
<from-outcome>success</from-outcome>
<to-view-id>/welcome.jspx</to-view-id>
</navigation-case>
</navigation-rule>
</faces-config>
web.xml
<?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>javax.faces.application.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml,/WEB-INF/portlet.xml</param-value>
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>CpxFileName</param-name>
<param-value>view.DataBindings</param-value>
</context-param>
<filter>
<filter-name>adfBindings</filter-name>
<filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
</filter>
<filter>
<filter-name>adfFaces</filter-name>
<filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
</filter>
<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>adfFaces</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>adfFaces</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>
</web-app>
Regards,
Alpa
Message was edited by:
user648923
Message was edited by:
user648923Hi deepak,
I have post the same message in web center forum.The link for the same is :
Re: Navigation problem in JSF portlet when using ADF
Also i had seen that post and had tried some solutions provided.Nothing worked for me.And i am using portlet faces bridge provided by oracle in jdeveloper 10.1.3.3 version.
Regards,
Alpa -
Navigation problem in JSF portlet when using ADF
Hi All,
I am implementing a simple scenario wherein i have an ADF Business Component (a simple drop down) and a command button. On click of the button, there is a navigation from one jsp to another.
I am able to portletize a simple application using ADF Business Component.It runs fine when run on local.
But when i put it on portal, navigation does not work.the control is not transferred to the method of backing bean.It is not showing loggers either.
jdev version :10.1.3.3
oracle portal :10.1.4
Standalone OC4j : 10.1.3
If any one has working model of this, can you pls post the files used.
Also , if anyone has work around for same, it will be helpful.Thanks.
Portlet.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<portlet-app version="1.0"
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"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
id="com.vodacom.portlet.ServiceFaultPortlet.af7cec80b0013456">
<portlet>
<portlet-name>ServiceFault</portlet-name>
<display-name>ServiceFault</display-name>
<portlet-class>oracle.portlet.server.bridges.jsf.FacesPortlet</portlet-class>
<init-param>
<name>DefaultPage.view</name>
<value>/index.jspx</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>Service Faults</title>
<short-title>Service Faults</short-title>
</portlet-info>
</portlet>
</portlet-app>
faces-config.xml
<?xml version="1.0" encoding="windows-1252"?>
<!DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
<faces-config xmlns="http://java.sun.com/JSF/Configuration">
<managed-bean>
<managed-bean-name>Index</managed-bean-name>
<managed-bean-class>view.backing.Index</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<!--oracle-jdev-comment:managed-bean-jsp-link:1index.jspx-->
</managed-bean>
<lifecycle>
<phase-listener>oracle.adf.controller.faces.lifecycle.ADFPhaseListener</phase-listener>
</lifecycle>
<application>
<default-render-kit-id>oracle.adf.core</default-render-kit-id>
</application>
<navigation-rule>
<from-view-id>/index.jspx</from-view-id>
<navigation-case>
<from-outcome>success</from-outcome>
<to-view-id>/welcome.jspx</to-view-id>
</navigation-case>
</navigation-rule>
</faces-config>
web.xml
<?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>javax.faces.application.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml,/WEB-INF/portlet.xml</param-value>
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>CpxFileName</param-name>
<param-value>view.DataBindings</param-value>
</context-param>
<filter>
<filter-name>adfBindings</filter-name>
<filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
</filter>
<filter>
<filter-name>adfFaces</filter-name>
<filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
</filter>
<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>adfFaces</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>adfFaces</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>
</web-app>
Regards,
AlpaHi George,
can u brief me on what exactly do you need ?
I am implementing a simple POC wherein i have made a ADF business component (which is just a DB fetch ) and i am dragging the same on index.jspx page.I have a command button on the same page which when clicked directs me to welcome.jspx.(it first goes to managed bean and returns success.)
And i am portletising this .. all this works fine on local ... even on portletising it runs fine .. But when i register this portlet on oracle portal .. navigation between index.jspx and welcome.jspx does not work.
If you need more inputs,let me knw.I have uploaded configuration files in my previous post.Also i am not getting any error when i am trying to make it work on portal..
Regards,
Alpa
Maybe you are looking for
-
Sql to create logical partitions
Oracle: 10.2.0.5 I am working with another group and they are pulling data from one of the databases I work on. They are using what they call 'logical partitions'. Basically it is a sql statement with a MOD function in the where clause. select * from
-
Hi All, The solution I am trying to implement is --> depending on value of a particular variable (field) I want to use a Custom VO for LOV query else it will use the seeded VO. So for that I have extended the "LovReassignToAM" to add new custom VO. I
-
Cannot download os x mountain lion from app store
I need to install the original mountain lion that i had on my system. I do not have the downloaded software. I did originally purchase the software, but I cannot redownload the software from the appstore. I keep on getting an error after the download
-
Adobe, please don't kill Dreamweaver !
I just acquired a client that wants a site redesign. I started looking at the code and being a Dreamweaver user since version 4, I was quite taken back with all the <csimport>...etc... tags. So I started a Google search and I was surprised to find li
-
Hello I want to change the Project Coding Masks . Is there any Standard Program which will delete all the tables of the WBS & Project names which have been created ? regards ebin