मैं एक अपवाद को पकड़ने के लिए चाहते हैं, यह लॉग इन करें, एक ध्वज सेट, और rethrow एक ही अपवादजावा: अपवाद rethrow नहीं कर सकते: क्रिया के अपवाद प्रकार अपवाद
मैं इस कोड है:
public Boolean doJobWithResult() {
boolean result = true;
final Feed feed = Feed.findById(feedId);
try {
feed.fetchContents();
} catch (Exception ex) {
result = false;
Logger.info("fetching feed(%d) failed", feedId);
throw ex;
}
return result;
}
लेकिन ग्रहण पूर्व में फेंकने की शिकायत करता है, यह बताता है कि "अनचाहे अपवाद प्रकार अपवाद", और मुझे इसके चारों ओर एक कोशिश-पकड़ ब्लॉक जोड़ने का सुझाव देता है।
वास्तव में, मैं प्रक्रिया अपवाद को संभालने के लिए इस विधि बुला चाहते हैं, और इसे अपने आप को संभाल नहीं ... मैं सिर्फ सच लौटने के लिए सब कुछ ठीक हो जाता है, और लॉग यह एक अपवाद
पर हो, तो चाहते हैं दूसरी तरफ, मैं अपवाद को एक और अपवाद के अंदर लपेट सकता हूं, लेकिन मैं इसे एक ही फेंक नहीं सकता ..
कोई विचार?
public Boolean doJobWithResult() {
:
public Boolean doJobWithResult() throws Exception {
// ...
}
सभी उत्तरों बहुत उपयोगी थे, मुझे लगता है कि यह भी अपवादों से निपटने के तरीके के बारे में कुछ संकेत देता है ... – opensas