Eaten exceptions starting with JDeveloper 10.1.3.1

In the thread Bug(?): Exceptions ignored in ControllerClass I described a bug in ADFPhaseListener that ate exceptions. Starting with 10.1.3.1, this bug remains and there is a new bug - exceptions are eaten in com.sun.faces.lifecycle.LifecycleImpl.phase() method as well. And it has even worse side effect - it prevents executing of subsequent phase listeners after the exception occurs, so the workaround defined in the other thread does not work. This even breaks JSF specification, which specifies, that container must ensure, that if beforePhase method is executed, corresponding afterPhase must be called.
To catch all Throwables and just output it if tracing is enabled, is quite nasty, especially in frameworks... Bug remains in 10.1.3.2 (the jsf-impl.jar is identical).
The only workaround is not to throw exceptions (ugh...). I have a base class for all ControllerClass-es, that catches Throwables and the handler forwards to errorpage and calls responseComplete():
public class BasePagePhaseListener implements PagePhaseListener {
  public final void beforePhase(PagePhaseEvent event) {
    try {
      // internal method
      beforePhaseInt(event);
    } catch (RuntimeException e) {
      handleError(e);
    } catch (Error e) {
      handleError(e);
  /** Method to override in subclasses */
  public void beforePhaseInt(PagePhaseEvent event) { }
  // afterPhase similarly...
  private void handleError(Throwable e) {
    FacesContext fctx = FacesContext.getCurrentInstance();
    fctx.responseComplete();
    ExternalContext ec = fctx.getExternalContext();
    RequestDispatcher rd = ((HttpSession)ec.getSession(true)).getServletContext()
      .getRequestDispatcher("/errorpage.jsp");
    ServletRequest request = (ServletRequest)ec.getRequest();
    request.setAttribute("javax.servlet.jsp.jspException", e);
    try {
      rd.forward(request, (ServletResponse)ec.getResponse());
    } catch (Exception e2) {
      e2.printStackTrace();
}I'm going to create a SR :(
Viliam
P.S.: never do catch (Throwable e) { }, if you really don't have to, please...

hi Viliam Durina
You are right about the issue in ADFPhaseListener and its different PhaseInvoker implementations.
Some of its PhaseInvoker.after() method implementations have empty catch blocks while catching Exception (for this JDeveloper itself warns "Catch block for java.lang.Exception should rethrow or invoke handler.").
See lines 329 and 414 in
<jdevstudio10132>\adfc\src\adf-controllersrc.zip!\oracle\adf\controller\faces\lifecycle\ADFPhaseListener.java
It looks like you have been dealing with this for a while? Has Oracle already explained this as intented behaviour or has a bug been logged?
Could you please explain why this "even breaks JSF specification, which specifies, that container must ensure, that if beforePhase method is executed, corresponding afterPhase must be called."?
The oracle.adf.controller.v2.lifecycle.PagePhaseListener is not part of that specification, is it?
regards
Jan Vervecken

Similar Messages

  • How to start with JDeveloper?

    As a straight A student of Computer Science, I put my hands on database development of an information system project for our CS faculty this summer. JDeveloper is used as the IDE for such project.
    I have learnt Java 2 and something about Oracle database in my courses. Now, after reading the product introduction and a short online course outline in iDeveloper2001, I have a brief idea about it. But since I can not afford much, how to learn more about it? Could you offer me some advices?
    Thanks a lot!

    The online users guide and documentation is the best place to
    start to learn how to use JDeveloper.
    - PSW
    Ram Purushothaman (guest) wrote:
    : Hi,
    : I am new to this Jdeveloper. I need to develop a intranet
    : project. Basically, I have to get the employee details from the
    : HR like work-telephone, email-address, etc.
    : Can somebody let me know how to start with Jdeveloper.
    Basically
    : I need to have a query screen (query by last_name or first_name
    : etc) and a result screen (results based on the query).
    : Any help is appreciated.
    : Thanks.
    : Ram.
    null

  • The best way to start with JDeveloper

    Can anybody tell me what the best way is to start using JDeveloper? Besides Oracle Manuals, are there other ones? Thanks for responding!!

    It would be nice if you can specify what is your background. Which tools/languages you used before?
    If you don't know Java pick up a Java book that will teach you the basics and the syntax.
    A good free online book is : http://www.mindview.net/Books/TIJ/
    Then use JDeveloper to do the code samples in the book.
    Use this tutorial to understand the basic of the JDeveloper IDE:
    http://www.oracle.com/technology/obe/obe1013jdev/10131/introide/introjdevide.htm
    Then once you got the basics you should probably try out the ADF tutorial to see how you build a complete Web application that interacts with a database:
    http://www.oracle.com/technology/products/adf/learnadf.html
    This page also contains the ADF Developer Guide book.
    In addition the JDeveloper home page has links to more demos tutorials and how-to's:
    http://otn.oracle.com/jdev

  • How to get start with JDeveloper

    How can I get started with JDeveloper

    Hi,
    Maybe by having a look on the different tutorials:
    http://www.oracle.com/technology/obe/obe1013jdev/index.htm
    That depends on the technologies you want to use, for ADF that could help:
    http://download-east.oracle.com/docs/cd/B25221_04/web.1013/b25386/index.htm
    Good luck,
    Tif

  • Starting with JDeveloper

    Hi
    We are on the client server platform working on Dev 6i. Are in the process of Migration from 6i to 9i. And Since the Web environment is new to us Would like to get myself into Java and JDeveloper. Since I am completely new to java. What would be the easiest and quickest way to get myself trained in Java and JDeveloper. Some material or guidance will be greate help.
    Thanks
    Diogo

    The JDeveloper page on OTN has a lot of resources to get you started - and if you are coming from the Forms background check out:
    http://www.oracle.com/technology/products/jdev/collateral/4gl/formsdesignerj2ee.html
    Also there is the JDeveloper handbook that you can buy.

  • Getting started with Jdeveloper

    Dear all,
    i have some difficulties to understand how ADF business components work. I want to create a simple java client, composed by a form of employees (where to insert some values like name, age and skills.. ) with a jbutton wich performs the action to insert those values into a database with only 1 table (employees). My problem is of understanding how the information's flow runs. When the user puts the values in the form who is responsable to insert tha data in the database and how the data reach the database from the view layer trough the entity objects?
    Thank's for helping me,
    christian

    Christian,
    Can you run through this tutorial:
    http://www.oracle.com/technology/obe/obe9051jdev/JClient/lesson_JClient.htm
    It will show you how to do what you want.

  • Version Control with JDeveloper

    Does any one know what version control packages can be used with JDeveloper? If you do, would you please let me know where I can get info on them.
    Thank you

    Alex,
    There are two parts to this answer.
    You can hook up any version control system
    to JDeveloper using various JDeveloper
    extension mechanisms including adding items
    to the tools menu or complete wizards.
    On OTN, you can find an CustomAddins which provides a way to integrate to any version control system by editing some batch files to point to their "put" and "get" type tools. This is meant as a simple starting point.
    Starting with JDeveloper 3.2, you will be able to take advantage of the intergrated source control feature that integrates Oracle Repository's source control features into JDeveloper.
    I hope this helps,
    -John

  • Version Control with JDeveloper application using ClearCase

    My team is evaluating J Developer to see if
    it matchs our requirement. We want
    to know how we will be able to use Clearcase
    as version control tool with our Java or JSP application developed using JDeveloper.
    We understand that J Developer will help us
    to create a zip file for deployment. Do we need to check in/out that zip file, zip/unzip the zip file, look for the file
    that we want to change, and then make change to it?
    If so how Clear Case knows which files in that zip file has been changed and what changes have been made?
    Currently, we use Clearcase to check in/out
    every single file, one at a time. We don't know how it will work with a zip file.
    Sincerely,
    Khanh

    Alex,
    There are two parts to this answer.
    You can hook up any version control system
    to JDeveloper using various JDeveloper
    extension mechanisms including adding items
    to the tools menu or complete wizards.
    On OTN, you can find an CustomAddins which provides a way to integrate to any version control system by editing some batch files to point to their "put" and "get" type tools. This is meant as a simple starting point.
    Starting with JDeveloper 3.2, you will be able to take advantage of the intergrated source control feature that integrates Oracle Repository's source control features into JDeveloper.
    I hope this helps,
    -John

  • Help !! Getting started in Jdeveloper

    Hi!, I want start learning how to use Jdeveloper from the very beginning. I really dont know anything about it, for example , i dont know if i need more programs than the Jdeveloper complete install to use it(ex Oracle 9i), etc, and i just encountered some topics for not so newbies users, anybody could help me and tell me a link (or a file from Jdev. complete install)where can i begin from scratch learning Jdev ? .
    Thanks a lot(really...)!!
    CristiAn.

    Christian,
    Getting started is tuff. I've developed in PowerBuilder, Oracle Forms, some VB and have started with JDeveloper 9.0.2. You should download Oracle 9i database from this site. You should at least install Jdeveloper 9.0.2 (do the full install). Install db and developer on seperate machines if possible. You don't need 9iAS until you are ready to test deploying a full "system". Jdeveloper comes with the ability to run you applications within the IDE (Integrated Development Environment a.k.a. JDeveloper).
    Now for the hard part. JDeveloper is NOT EASY TO LEARN. Most of the postings on this site do not deal with the basics (in my opinion). There are a myriad of choices in JDeveloper on how to build your applications and so far, after a little over 4 weesk, I have yet to get anyone from Oracle or otherwise to point to documented "reasons" why one would/should use UIX-JSP, BC4J-JSP, UIX-XML or JClient web pages to solve either a general or specific business need. So good luck on trying to figure out what it all means.
    Lastly, this is not VB, Oracle forms or PowerBuilder so don't try and make it that (if those are in your experience).
    So, you may ask, why would I hang in there after 4 weeks of what seem like getting nowhere? I can't say, other than my instincts tell me that J2EE will be some significant part of the Software Development future.
    Good Luck, and you can be pretty sure I may not look at this post again to see if you have more questions for me (get used to that on this site too!), so follow up your questions with the idea that someone else may say more (but also be aware you may never see another reply).
    Ed.

  • Exception obtained when invoking a web service generated with JDeveloper

    Hello,
    I tried to create a synchronous BPEL process that invokes synchronously a Java Web Service created with the JDeveloper. The web service is wrapped around a regular Java class. The new created BPEL process is successfully compiled and deployed on the server. But when I try to initiate a test instance of the process in the BPEL console, after I fill the input parameter for then process and push the "Post XML Message" button, I obtain the following error:
    Your test request generated the following exception/fault:
    BPEL Fault: {http://oracle.com/cde/util/Top300DAO.wsdl}org.apache.wsif.soap.fault{org.apache.wsif.soap.fault.object=java.net.ConnectException: Connection refused: connect}
    I looked at flow and it throws the exception when it tries to invokes the web service generated with JDeveloper.
    Do you have any hints, ideas? Thanks a lot in advance for your help.
    I want to also say that the proxy settings for the BPEL server and designer are filled. I think that they are ok because I succeeded to start an instance of another process that calls synchronously an external Web Service.
    Regards,
    Marinel

    My guess is that this is caused by the WSDL of your service having an invalid service address. Can you please take a look at the WSDL of your service make sure that the location of the address is valid? (we have seen a couple of instances in the past where the generated url did not have the right port information).
    Update that WSDL, restart the BPEL server or from the BPEL console clear the WSDL cache and re-initiate your flow.
    Best,
    Edwin

  • Jdeveloper Multi-language: How to start with a diffenent language?

    I am using jdeveloper version 11.1.1.3.0 on linux. How can I start my jdeveloper in a different language other than the OS language setting? I want to change the display of my jdeveloper to a different language (i.e French).
    I tried the following:
    Modified the jdev.conf file in jdev/bin folder to add the following JVM parameter.
    AddVMOption -Duser.language=fr
    AddVMOption -Duser.country=FR
    Then, when I start the jdeveloper, I get the following info message:
    INFO: Locale fr_FR is not supported by this product. Forcing locale to en_US.
    any idea?
    Thanks

    Thanks for the reply. I am actually creating a jdeveloper extension and like to support multiple language for that extension. I created properties resource bundle files (i.e bundlename.properties, bundlename_fr.properties) file and put all my text there. Then I use a method in java class to extract those text values which looks like the following:
        private static String getStringForBundle(String key, Locale locale){
            if(locale == null){
                locale = Locale.getDefault();
            ResourceBundle bundle;
            if (locale != null){
                bundle = ResourceBundle.getBundle(BUNDLE_NAME,locale);
            else
                bundle = ResourceBundle.getBundle(BUNDLE_NAME);
            return bundle.getString(key);
        }I like to test this extension in French or other language, So, I wanted to start the jdeveloper with that language. Can I do that?
    I modified the jdev.conf file to add the following
    AddVMOption -Duser.language=ja
    AddVMOption -Duser.country=JP
    As you mentioned, jdeveloper supports japanese language, I can see it's been translated to japanese. Now, if jdeveloper only support japanese, then does it mean that my jdev extension will also only support japanese?
    Thanks
    Edited by: user599422 on Oct 29, 2010 4:19 PM
    I got my answer. Jdeveloper only support Japanese language other than English. Since, jdeveloper only supports japanese language, it's extension will also only support Japanese and English(same JVM).
    Edited by: arafique on Nov 1, 2010 9:56 AM

  • Unable to start OC4J with JDeveloper 903

    Hello,
    I got the following error message when I try to start the oc4j shipped with jdev903. Could anyone please let me know why I am getting the error message below, and how to fix it:
    Java path is poiting to e:\jdk1.3.1_07
    OS : windows /2000
    E:\JDeveloper\j2ee\home>java -jar oc4j.jar
    # HotSpot Virtual Machine Error, Internal Error
    # Please report this error at
    # http://java.sun.com/cgi-bin/bugreport.cgi
    # Error ID: 4649454C44345950450E4350500029
    # Problematic Thread: prio=5 tid=0x234a10 nid=0x9a0 runnable
    Do I need to report this error to Sun or Oracle?
    How do I fix this error?
    Thanks.
    ATN

    This one should go to Sun.
    Try OC4J with the VM installed with JDeveloper. Also, you might want to try 1.3.1_02 (just to see if that works on your machine)
    Rob

  • HT1533 My MacBook has crashed...it started with capitals letters sticking and always starting in safe mode and now despite efforts to restore from my Lacie externall drive I can't get anything on screen except a grey "stop" sign

    My MacBook has crashed...it started with capitals letters sticking and always starting in safe mode and now despite efforts to restore from my Lacie externall drive I can't get anything on screen except a grey "stop" sign

    Sorry just noticed I've probably posted this under the wrong forum header

  • I am walking through Apples tutorial getting started with iOS development. I am at the storyboard area and can't seem to drag the cancel button to the green exit. I am not sure why the exit button doesn't except it. Is anyone else having this issue?

    I am walking through Apples tutorial getting started with iOS development. I am at the storyboard area and can't seem to drag the cancel button to the green exit. I am not sure why the exit button doesn't except it. Is anyone else having this issue? Is there a work around? I have done this app twice and still cant get the exit to except the Cancel or Done  bar buttons

    Yes I checked it.  As far as I can see I did everything Apple said to do.  I took some screen shot so you can see how the screens are connected and what and where the code is, and what it does when I drag the cancel and done bar buttons to the exit

  • G3 Lombard - Can't get started with anything except OS 8.6.

    Hi,
    I just bought a used Mac Bronze keyboard (Lombard). It was working great until i fixed it. (Yikes) By fixing it i mean I installed my software OS 9, and some other things that work on my 3400c. The Lombard didn't like that (OS 9.0) and wouldn't start. The Lombard Only boots with OS 8.6. After confirming that the CD reader was working fine. My Lombard would not start up with the OS 9 CD. (Flashing folder and question mark) Hmmmm Very strange. It also wouldn't go into SCSI hard disc mode. So I put the hard drive in my Mac 3400c and it worked fine. Hard disc mode and everything. While in Hard Disk Mode on the 3400c i put the OS 8.6 system and the finder back into the same folder and started up my Lombard. Perfect. It worked great. NOT leaving well enough alone I used the Norton disc utils on the hard drive. It fixed a few things and said it couldn't fix this last thing (i hit ok too quick to read what it couldn't fix). It also wouldn't start with the hard drive from the 3400c. (OS 9) Or even the hard drive from my Blue and white also OS 9. Any ideas?

    OK i took the 8.6 system folder off the hard drive and replaced it with the 9.0 system folder.
    Sorry, but I still don't understand clearly where an OS 9 System Folder came from, if you weren't able to start the Lombard with the installer disc. So which of these did you do:
    Did you boot the 3400 to the installer disc, with the Lombard connected in SCSI Disk Mode, and then run the installer to install OS 9 onto the Lombard's hard drive? If so, the installation was tailored to the hardware of the 3400, because it was the host computer. That installation would be no more appropriate to boot the Lombard than the OS on the 3400's own hard drive is — and you know (now that you've tried it) that the 3400's drive doesn't boot the Lombard. In SCSI disk mode, the installer has no idea that the target disk is even part of another computer, never mind any information about the rest of that computer's hardware configuration. All it sees is the disk, and it assumes that that disk will be used to boot the host computer — exactly as if it were inside the host computer.
    OR
    Did you simply copy the System Folder from the installer disk (without actually running the installer) to the Lombard via SCSI Disk Mode? That wouldn't work either: the SF on an installer disk is only bootable when it resides on that disk. A copy of it moved elsewhere will rarely if ever boot any Mac.
    OR
    What other possibility is there? I can't think of another, but maybe you did. If so, what was it?

Maybe you are looking for

  • Is it possible to change what is displayed in the GAL in Exchange 2013

    We have always used [email protected] for our primary email addresses, and to facilitate this someone back in the days of Exchange 2003 decided it would be sensible to use the firstname.lastname format for our alias. This means our primary email does

  • CS6: Can't switch off color management in the printerdriver when photoshop manages colors

    So this is weird: I'm using CS6 Extended and Lightroom 5 on a Windows 7 Pro machine, printing to an old Canon Pixma Ip5200R. When i print from Lightroom, i am using a special printer profile for the pixma and my photopaper, so color management is swi

  • Everything quits. I tried AOL but it quits

    I have been using eHarmony and access the dating boards there. There has been no problem. But suddenly when I try I get an error saying safari can't open the page because of redirects back to the original page. I tried using AOL but it quits every ti

  • Error restoring iPhone 5 help

    I have tried to restore my iphone 5 on two different computers, one being a mac, and the error message is still appearing. I have done everything that the apple website has told me to do.. what shal I do now?

  • My phone is blocked on black screen

    Hi, i just got an Iphone 4, 2 weeks ago, and i had some issues at the beginning, the iphone won't turn on, and didn't want to charge... after a full charge it worked ok. but few days later i had a black screen on my mobile, i thought it was turned of