Handling User Exceptions in DialogBox
Hi all....
I have the following Dialogbox which asks the user for 2 integers and then adds these to the TextArea with some predefined text.
What I wanted was if the user inputs anything illegal such as text, inplace of 2 integers, how I could detect this and warn the user?
String setSize1 = (String JOptionPane.showInputDialog(topPanel, "Enter your Preferred Size. " + "\n" + "Please enter 2 integers:", "Set Size", JOptionPane.QUESTION_MESSAGE);editor.append("setSize( " + setSize1 + "); " + "\n " + "}");
Any help much appreciated....
Thanks for the advice. You are correct of course; handling every possible exception is the ideal, one which we should all aspire to...
In the meantime though, I'd like to have a sort of safety net to catch all those "unexpected" exceptions. In my searches I have just now found these links which look very promising as a potential solution/work-around for this issue:
http://www.experts-exchange.com/Programming/Programming_Languages/Java/Q_20567074.html
http://developer.java.sun.com/developer/bugParade/bugs/4714232.html
The idea of overriding the exception handler I feel is a pretty heavy handed way of dealing with uncaught exceptions... any other thoughts on this are welcome.
Similar Messages
-
How to handle user exception in thread
hi all
How to hanble user exception in thread
I cant throw any user exception here
what is the error
Thread threadConnection = new Thread(new Runnable() {
public void run() {
try {
_connection = DriverManager.getConnection(strURL, strUser,
strPassword);
} catch (SQLException sqle) {
String strMessage = "Error Connecting To Settlement Service Database";
String strCause = "Error Occured attempting to Connect to the Settlement Service Database.<br>";
strCause = strCause + "The JDBC Configuration is:";
strCause = strCause + "<ul>";
strCause = strCause + "<li>JDBC Driver : " + strDriver
+ "</li>";
strCause = strCause + "<li>JDBC URL : " + strURL
+ "</li>";
strCause = strCause + "<li>JDBC User : " + strUser
+ "</li>";
strCause = strCause + "<li>JDBC Password: (Masked) </li>";
strCause = strCause + "</ul>";
String strRecovery = "Please make sure the Settlement Service Database is running can be accessed.";
VFExceptionInfo vfExceptionInfo = VFExceptionInfoGenerator
.generate(strMessage, strCause, strRecovery, sqle);
throw new DBAccessException(vfExceptionInfo);
//unhandle exception type DBAccessException
threadConnection.start();
Who should catch the exception if it is thrown?
You need to signal the error in any other way. What should happen if the connection can't be established?
Kaj -
How can we handle user defined exceptions in ejbStore() of entity bean
Accroding to my knowledge in ejbStore we can not handle user defined exceptions. Can anybody help on this????
In my case I am calling a method from ejbsotre() . In that method i wanted to put some checks according to that i wanted to throw exceptions.
In this case how would I handle exceptions.
Can you suggest in this case,please !!! -
How to handle user defined exception from C#?
Hi:
I have some PL/SQL code that will throw a user defined exception if certain conditions are met. How do I handle user defined exceptions if this procedure/function is being called from C#? C# can handle a normal Oracle SQL error (e.g. ORA-XXXX) because they are defined in the proper class, but how do I get it to know about my user defined exception? Does anyone have any links to examples of doing this?
Thanks.Hi Gaff,
Is there a particular problem you're having doing this? It works as normal for me...
Cheers
Greg
PLSQL
=========
create or replace procedure throwsomething as
begin
raise_application_error(-20001,'kaboom');
end;
ODP
=====
class Program
static void Main(string[] args)
using (OracleConnection con = new OracleConnection())
con.ConnectionString = "user id=scott;password=tiger;data source=orcl";
con.Open();
using (OracleCommand cmd = new OracleCommand())
cmd.CommandText = "begin throwsomething;end;";
cmd.Connection = con;
try
cmd.ExecuteNonQuery();
catch (OracleException oe)
Console.WriteLine("caught " + oe.Message);
OUTPUT
========
caught ORA-20001: kaboom
ORA-06512: at "SCOTT.THROWSOMETHING", line 3
ORA-06512: at line 1 -
How to handle the Exception in GP using executable callabel object.
Hi all,
I handled an exception in GP using Background callable Object. That is working fine.
(Ex: Exception_No_User_Found). The Problem is I am not able to handle the exceptions for normal callable object. I have done the same thing as i did in background callable object except implementing IGPBackgroundCallableObject Class. I have created an WebDynpro DC Project where in getDescription method i declared an Exception and in execute method of component controller I caught the exception if no user found.
Then i created an callable object for this simple DC project. but that is not working i could not catch the exception. when i execute the process it is asking the User ID if i give the wrong userId it is not refreshing back to the user id input form.
But if i test that simple callable object separately it is throwing an Exception when I give the wrong input..
but the same thing is working fine using background callable object.
I couldn't handle the exception for the simple callable object or executable callable object.
Please If anyone bring me the solution that would be appreciated.
Thanks in advance.
Regards,
Malar.Hi Shikhil
Thanks for your reply
Please have a look below for exceptions which i am getting in GP and let me know how to handle these exceptions.
1) "Activity could not be read"
2) "Action has been stopped"
3) error while processing the item can not be displayed
if you give any idea/clue how to handle these exceptions then it would be great help to me
Thanks
Sunil -
Is there a way to handle system exception ERROR_MESSAGE?
Hi,
I have a program executed in background, which produces a bunch of consecutive documents for a set of Bulk Shipments -> TD Loading and TD Delivery Confirmation. To create those documents I use function modules 'OIGI_LOADING_CREATE' and 'OIGI_DEL_CONF_CREATE' - both from Industry-Solution Oil-and_Gas (IS-Oil).
In some cases these FM-s produces error messages (E-type) which cancel execution of the program and broke my flow-logic.
Below are few messages recorded in a job log for my task:
18.08.2005 15:56:41 Job started
18.08.2005 15:56:41 Step 001 started (program /PTRL/TAS_POSTPONDED_SYNC, variant , user name IMUTAFCHIEV)
18.08.2005 15:56:58 Shipment 180753 saved
18.08.2005 15:57:06 The plant data of the material 177 is locked by the user BMINKOV
18.08.2005 15:57:06 The plant data of the material 177 is locked by the user BMINKOV
18.08.2005 15:57:06 The plant data of the material 177 is locked by the user BMINKOV
18.08.2005 15:57:06 Job cancelled after system exception ERROR_MESSAGE
Both function modules are not designed to handle any exceptions, and in owr environment (4.6c) there is no documented system exception 'ERROR_MESSAGE' which to be handled in CATCH-ENDCATCH block.
Is there a way to handle this exception and to track the list of error messages produced by some FM into an internal table, log, whatever, as it is done in the log of the background job. I need to find a way write these messages in my log-tables and to proceed further with my flow-logic.
FYI: my program executes an RFC call to a remote system and retrieve a list of documents which need to be synchronized with R/3. I loose information, if the R/3 broke my flow-logic.
Any help would be highly appresiated.
Many thanks in advance.
Ivaylo MutafchievSven,
I made few programs where we used business scenario:
IS-Oil Shipment => IS-Oil Loading Confirmation => IS-Oil Delivery Confirmation.
All of them are based on Function Module call:
1. OIGI_LOADING_CREATE and
2. OIGI_DEL_CONF_CREATE.
To load shipment I call 1st FM in a way:
CALL FUNCTION 'OIGI_LOADING_CREATE' DESTINATION 'NONE'
EXPORTING
I_SUBRC = 9 "save and commit
I_SHNUMBER = shNumber
I_VEHICLE = vehicle
I_LDPLT = plant
I_LDDATE = loadDate
I_LDTIME = loadTime
I_LDCDAT = loadDate
I_VEH_NR = veh_nr
TABLES
T_OIGISVMQ = quantity_items
T_OIGISVMQ2 = hpm_append
T_OIGISIQ = doc_quan_items
EXCEPTIONS
COMMUNICATION_FAILURE = 1 MESSAGE p_error
SYSTEM_FAILURE = 2 MESSAGE p_error.
To confirm shipment (status 4) I call the same FM with:
CALL FUNCTION 'OIGI_LOADING_CREATE' DESTINATION 'NONE'
EXPORTING
I_SUBRC = 39 "confirm & commit 2nd step
I_SHNUMBER = shNumber
I_VEHICLE = vehicle
I_LDPLT = werks
EXCEPTIONS
COMMUNICATION_FAILURE = 1 MESSAGE sh_error
SYSTEM_FAILURE = 2 MESSAGE sh_error.
And finaly to finish process (status = 6) I call 2nd FM in a way:
CALL FUNCTION 'OIGI_DEL_CONF_CREATE' DESTINATION 'NONE'
EXPORTING
I_SUBRC = 19 "save, confirm and commit
I_SHNUMBER = shNumber
I_RAPID_CONFIRM = 'X'
I_DDCDAT = loadDate
I_DLDATE = loadDate
I_DLTIME = loadTime
EXCEPTIONS
COMMUNICATION_FAILURE = 1 MESSAGE p_error
SYSTEM_FAILURE = 2 MESSAGE p_error.
FYI: It tooks me some time to 'investigate' and find correct use of these function modules. And I worked VERY CLOSE with our SD consultant.
For details (what the export parameters and tables consist of) and sample code, please contact me at:
ivaylo dot mutafchiev at vbs dot bg
I would be glad to share my knowlege.
Regards,
Ivaylo -
How to handle RFC exception in XI
We have developed a proxy-> RFC scenario. But its not able to handle the RFC exception. In case of an exception the response payload is as below
<rfc:Y_BAPI_GET_POSTING_PERIOD.Exception xmlns:rfc="urn:sap-com:document:sap:rfc:functions"><Name>RFC_ERROR_SYSTEM_FAILURE</Name><Text>Screen output without connection to user.</Text><Message><ID>RFC_ERROR_SYSTEM_FAILURE</ID><Number>044</Number></Message><Attributes><V1>DYNPRO_SEND_IN_BACKGROUND</V1></Attributes></rfc:Y_BAPI_GET_POSTING_PERIOD.Exception>
Is it correct way to get exception from RFC in such a way or the error/exception text should come in RETURN part of the RFC response?
What is the best approach or solution to handle the sync. RFC call exception in XI?Hi,
You can create a Fault Message Type and map the RFC exception text to this.
In the interface mapping in addition to Request and response
mapping you will get an additional fault message mapping.
This will handle your exception properly.
Regards,
V.Ramya -
How to handle multiple exceptions by the same code?
Hi, all:
In my situation I want AException and BException handled by the same code, while CException and DException handled by another code. How can I write my try-catch code in a simple way? Of course I can do the following:
public void TheMainFunction() {
try {
} catch (AException e) {
Handle_AB();
} catch (BException e) {
Handle_AB();
} catch (CException e) {
Handle_CD();
} catch (DException e) {
Handle_CD();
private void Handle_AB() {
private void Handle_CD() {
}But is there a simpler way?
Thanks in advance.If you have one or two places in your code that need multiple exceptions, just do it with multiple catch statements. Unless you are trying to write the most compact Programming 101 homework program, inventing tricks to remove two lines of code is not good use of your time.
If you have multiple catches all over your code it could be a code smell. You may have too much stuff happening inside one try statement. It becomes hard to know what method call throws one of those exceptions, and you end up handling an exception from some else piece of code than what you intended. E.g. you mention NumberFormatException -- only process one user input inside that try/catch so it is easy to see what error message is given if that particular input is gunk. The next step of processing goes inside its own try/catch.
In my case, the ArrayIndexOutOfBoundsException and
NumberFormatException should be handled by the same way.Why?
I don't think I have ever seen an ArrayIndexOutOfBoundsException that didn't indicate a bug in the code. Instead of an AIOOBE perhaps there should be an if statement somewhere that prevents it, or the algorithm logic should prevent it automatically. -
Re: Handling an exception in a superclass...
Akos,
When subclasses override ExecSQL(), do they call
super.ExecSQL() before/after doing additional processing?
If so, it makes sense to handle some generic exceptions
in the superclass. If not, then your exception handlers
will never be executed.
For database reconnection logic, you can write a
SQLManager.GetDBSession() method
which will check the connection and return a valid
DBSession object. Even the reconnecting logic can be
coded in this method and all SQLs simply use GetDBSession()
in their ON SESSION clause. Apparantly, this seems to
be the standard way of handling Database connections.
I have seen it being used in many frameworks, including
the one that I wrote.
Hope this helps.
Ajith Kallambella M.
From: Gabriel Akos <[email protected]>
Reply-To: Gabriel Akos <[email protected]>
To: [email protected], [email protected]
Subject: Handling an exception in a superclass...
Date: Mon, 17 May 1999 17:26:06 +0200
Hi!
I have the following problem:
1. I have a class, name SQLManager
2. I have a method, ExecSQL
3. In method ExecSQL I do some SQL, occasionally it's loosing the
connection to the DB, gets an
exception, reasoncode 201 (If my memory is correct)
4. I have some subclasses of SQLManager, which override ExecSQL, and do
some SQL stuff in it.
Question: Is it possible to handle the specific exception in the
superclass, and do the reconnect?
And probably let the subclass execute the ExecSQL again?
Or has anybody better ideas of organizing these things?
TIA, best regards,
Akos Gabriel
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
Get Free Email and Do More On The Web. Visit http://www.msn.com
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>Hi,
Yes you can : it is an architectural problem.
You must divide the work into 2 methods : one on the generic level and one
on the concrete level.
The generic level will manage the cinematic : it could be ExecSql. In the
ExecSql method you can call a DoExecSql method which can be overridden by
the developers and contain the sql statement. Then, the ExecSql method can
manage the reconnect using DBSession.Reconnect before the call of the
DoExecSql if the DBSession.IsConnected = FALSE. You can also manage a While
with a limited number of retries if you catch the exception from the
DoExecSql method.
Just be aware that when you will reconnect to the database, you will loose
the statements you could have cached with your DBSession.
Hope this helps,
Daniel Nguyen
Freelance Forte Consultant
Url : http://perso.club-internet.fr/dnguyen/
Gabriel Akos a écrit:
Hi!
I have the following problem:
1. I have a class, name SQLManager
2. I have a method, ExecSQL
3. In method ExecSQL I do some SQL, occasionally it's loosing the
connection to the DB, gets an
exception, reasoncode 201 (If my memory is correct)
4. I have some subclasses of SQLManager, which override ExecSQL, and do
some SQL stuff in it.
Question: Is it possible to handle the specific exception in the
superclass, and do the reconnect?
And probably let the subclass execute the ExecSQL again?
Or has anybody better ideas of organizing these things?
TIA, best regards,
Akos Gabriel
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>-
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/> -
Handling an exception in a superclass...
Hi,
Why not have a method at the superclass level, called ExecSQL(), that
internally does the following:
begin
self.OnExecSQL();
exception
when e:Whatever do
end;
In that way all your code in the hierarchy that is in OnExecSQL() is within
the exception block.
Tim Sawyer
PanCredit
Leeds, UK.
From: Gabriel Akos <[email protected]>
Reply-To: Gabriel Akos <[email protected]>
To: [email protected], [email protected]
Subject: Handling an exception in a superclass...
Date: Mon, 17 May 1999 17:26:06 +0200
Hi!
I have the following problem:
1. I have a class, name SQLManager
2. I have a method, ExecSQL
3. In method ExecSQL I do some SQL, occasionally it's loosing the
connection to the DB, gets an
exception, reasoncode 201 (If my memory is correct)
4. I have some subclasses of SQLManager, which override ExecSQL, and do
some SQL stuff in it.
Question: Is it possible to handle the specific exception in the
superclass, and do the reconnect?
And probably let the subclass execute the ExecSQL again?
Or has anybody better ideas of organizing these things?
TIA, best regards,
Akos Gabriel
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>Hi,
Yes you can : it is an architectural problem.
You must divide the work into 2 methods : one on the generic level and one
on the concrete level.
The generic level will manage the cinematic : it could be ExecSql. In the
ExecSql method you can call a DoExecSql method which can be overridden by
the developers and contain the sql statement. Then, the ExecSql method can
manage the reconnect using DBSession.Reconnect before the call of the
DoExecSql if the DBSession.IsConnected = FALSE. You can also manage a While
with a limited number of retries if you catch the exception from the
DoExecSql method.
Just be aware that when you will reconnect to the database, you will loose
the statements you could have cached with your DBSession.
Hope this helps,
Daniel Nguyen
Freelance Forte Consultant
Url : http://perso.club-internet.fr/dnguyen/
Gabriel Akos a écrit:
Hi!
I have the following problem:
1. I have a class, name SQLManager
2. I have a method, ExecSQL
3. In method ExecSQL I do some SQL, occasionally it's loosing the
connection to the DB, gets an
exception, reasoncode 201 (If my memory is correct)
4. I have some subclasses of SQLManager, which override ExecSQL, and do
some SQL stuff in it.
Question: Is it possible to handle the specific exception in the
superclass, and do the reconnect?
And probably let the subclass execute the ExecSQL again?
Or has anybody better ideas of organizing these things?
TIA, best regards,
Akos Gabriel
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>-
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/> -
hi,
I am accessing wsdl to get all the required data and the connection is establishing successfully thru java code but when i am calling the create user api the following exception is coming
"com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: No NamespaceURI, SOAP requires faultcode content to be a QName"
please tell me what is faultcode means and how to solve this exceptionHi,
Whenever there is any error inside the WebService or while it's processing ...it throws Exceptions ..We can handle these exception by our own to make the Exception details more readable.....For that we can create our own SOAPFault message...
Please refer to the below Posts...
1). If you are using JAXWS Style of WebService then : http://middlewaremagic.com/weblogic/?p=713
2). If you are using JAXRPC Style of WebService then : http://middlewaremagic.com/weblogic/?p=721
Thanks
Jay SenSharma
http://middlewaremagic.com/weblogic (Middleware magic Is Here) -
How to handle SYSTEM_NO_MEMORY exception
Hello,
is there a way to handle the SYSTM_NO_MEMORY exception in a Z-Program? I want to show the user an error message with hints how to prevent this short dump instead of having the system showing the short dump.
I tried to use TRY-statement but until now I wasn't successful.
Thank you for your help,
StefanHi Stefan;
It seems there is no way to handle that exception as it's memory problem during run time.
Please try to free unusable internal tables in each subroutine.
Regards
Vindy -
How to handle the Exception when RegisterEventProcessorAsync
In our Cloud Service project, we have 2 instances for work role (deploy to Azure), the work role is consume events from the EventHub using EventProcessorHost).
When we want to register EventProcessor to consume data (see below):
await eventProcessorHost.RegisterEventProcessorAsync<eventProcessor>();
Sometimes we will got the Exception:
Microsoft.WindowsAzure.Storage.StorageException: The remote server returned an error: (412) There is
currently a lease on the blob and no lease ID was specified in the request.. ---> System.Net.WebException: The remote server returned an error: (412)
There is currently a lease on the blob and no lease ID was specified in the request..
at Microsoft.WindowsAzure.Storage.Shared.Protocol.HttpResponseParsers.ProcessExpectedStatusCodeNoException[T](HttpStatusCode expectedStatusCode, HttpStatusCode actualStatusCode, T retVal, StorageCommandBase`1 cmd, Exception ex)
at Microsoft.WindowsAzure.Storage.Shared.Protocol.HttpResponseParsers.ProcessExpectedStatusCodeNoException[T](HttpStatusCode expectedStatusCode, HttpWebResponse resp, T retVal, StorageCommandBase`1 cmd, Exception ex)
at Microsoft.WindowsAzure.Storage.Blob.CloudBlobSharedImpl.<DeleteBlobImpl>b__1b(RESTCommand`1 cmd, HttpWebResponse resp, Exception ex, OperationContext ctx)
at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.EndGetResponse[T](IAsyncResult getResponseResult)
--- End of inner exception stack trace ---
at Microsoft.WindowsAzure.Storage.Core.Util.StorageAsyncResult`1.End()
at Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob.EndDeleteIfExists(IAsyncResult asyncResult)
at Microsoft.WindowsAzure.Storage.Core.Util.AsyncExtensions.<>c__DisplayClass1`1.<CreateCallback>b__0(IAsyncResult ar)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at Microsoft.ServiceBus.Messaging.BlobLeaseManager.<DeleteAllAsync>d__2a.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ServiceBus.Messaging.EventProcessorHost.<InitializeAsync>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ServiceBus.Messaging.EventProcessorHost.<StartAsync>d__e.MoveNext()
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at System.Threading.Tasks.Task.Wait()
at awaiteventProcessorHost.RegisterEventProcessorAsync<eventProcessor>();
If we got the Exception, we won’t got messages any more.
From the Call Stack, we found it was cause by delete the Blob. So we wonder that, when we call
RegisterEventProcessorAsync,
the hub will delete the blob and renew one in Storage?
If we delete the blob for the EventHub manually and then run our server again. It worked as usual.
But we can do it like this way manually, so is there any way to handle the exception in code to make the EventProcessorHost worked?
Thanks so much!If we use different blob container name for different EventProcessorHost, is it a workaround for the issue?
var
eventProcessorHost = new
EventProcessorHost(
hostName,
hubName,
consumerGroupName,
serviceBusConnectionString,
storageConnectionString,
leaseContainerName); -
How to handle the exception in GP(Exception : Activity could not be read)
Hi all
we are getting the GP exceptions as 1) "Activity could not be read" 2) "Action has been stopped"
3) error while processing the item can not be displayed
Please let me know how to handle these exceptions in GP .
currently i got some documents in SDN on GP exceptions but those are related to manual exceptions for example if you enterd wrong data in the inputfield then we can handle those exceptions then it will allow to enter the new value but the exceptions which i mentioned above are new it seems
can you please let me know how to handle or solve those 3 exceptions
Thanks
binduHi Shikhil
Thanks for your reply
Please have a look below for exceptions which i am getting in GP and let me know how to handle these exceptions.
1) "Activity could not be read"
2) "Action has been stopped"
3) error while processing the item can not be displayed
if you give any idea/clue how to handle these exceptions then it would be great help to me
Thanks
Sunil -
How to handle multiple exception types in JSF 2?
I'm trying to handle multiple exception types in JSF2, including a default error page for any unexpected exception types. The problems I'm having are:
1) ViewExpiredException is handled only when no generic exception handler is specified
2) "Regular" exceptions like NullPointerException are never handled
My managed bean:
@Named
@SessionScoped
public class MyController implements Serializable {
/* A method that does nothing */
public void doNothing() {
//do nothing
/* Generate a null pointer exception on purpose */
public void generateNpe() throws NullPointerException {
Object x = null;
x.toString();
My test page to generate the exception:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title>Test page</title>
</h:head>
<h:body>
<h:form>
<h:commandButton id="button1" value="do nothing" action="#{myController.doNothing}" />
<h:commandButton id="button2" value="generate NPE" action="#{myController.generateNpe}" />
</h:form>
</h:body>
</html>
My web.xml:
<!-- Redirect all NPEs to this page; this never works! -->
<error-page>
<exception-type>java.lang.NullPointerException</exception-type>
<location>/error/error003.jsf</location>
</error-page>
<!-- Redirect all VEEs to this page; this works fine if the next section is excluded -->
<error-page>
<exception-type>javax.faces.application.ViewExpiredException</exception-type>
<location>/error/error002.jsf</location>
</error-page>
<!-- This grabs everything, even with the previous sections defined. If I exclude this error-page section, VEE works fine but NPE still does not get redirected -->
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/error/error001.jsf</location>
</error-page>My questions are as follows:
1) How can we handle "regular" java exceptions like NPE?
2) How can we define a catch-all for unexpected exception types, while still respecting specific exception handlers for VEE, etc?
Thanks,
BenjaminIs your data model right? If you are adding in one and deleting in another it sounds to me more like a process that an entity, in which case you may revisit your data model and simplify it, add in a session bean with the process method to co-ordinate between the two.
However, if you want to map multiple different tables within a single entity bean it is possible and just part of the mapping. How you actualyl specify it depends on which implementation you are working with.
Cheers,
Peter.
Maybe you are looking for
-
Automatic Payment Program -Display of Payment Proposal
Dear Gurus, My client has maintained a industry field for all the vendor in their Master Data.The Reason for that when they run the APP they just select the industry in the free selection field.And the payment prosopal should be specific to Industry
-
Refresh selectOneChoice ListBinding Conditionally
Hi, I am again asking for help. It stuck me for a while now. Thanks in advance for your inputs. I want 3 list boxes conditionally refreshed depending on a data input. So a data input triggers the refresh of list binding of the dropdown list. The inpu
-
i want to use jsp to servlet communication. i use a bean with session scope for each user. in the jsp pages i simply use the jsp command -<jsp:useBean id="cart" scope="session" class="DummyCart" /> and set properties etc. how can i use a servlet and
-
TS1702 Recently Navigation is not working in my ipad2
In past my navigation is working properly with google maps but recently I upgrade my ipad2 iOS , find tHat my google maps was changed and navigation is working now
-
I apologize in advance if this is not the correct place to ask this but I was curious if anyone knows whether or not the new iphone can handle flash content in it's browser?