You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Peng Yonghua <py...@vodafonemail.de> on 2017/06/01 09:47:47 UTC
Re: capture exception
Thanks for everyone's reply.
I got the idea from
https://stackoverflow.com/questions/4006267/what-is-the-best-way-to-handle-exceptions-in-perl
,
The consensus of the Perl community seems to be thatTry::Tiny
<http://search.cpan.org/perldoc?Try::Tiny>is the preferred way of doing
exception handling. The "lenient policy" you refer to is probably due to
a combination of:
* Perl not being a fully object-oriented language. (e.g. in contrast
to Java where you can't avoid dealing with exceptions.)
* The background of many Perl developers. (Languages like C^1 and
shell don't have exception mechanisms.)
* The kind of tasks people tend to use Perl for. (Small scripts for
text munging and report generation where exception handling isn't
needed.)
* Perl not having a (good) built-in exception mechanism.
Note that the last item means that you'll see a lot of code like this:
|eval{something()};if($@){warn "Oh no! [$@]\n";}|
That's exception handling even though it doesn't use try/catch syntax.
It's fragile, though, and will break in a number of subtle edge cases
that most people don't think about. Try::Tiny and the other exception
handling modules on CPAN were written to make it easier to get right.
On 2017/6/1 星期四 0:38, Hiram Gibbard wrote:
> So when we say "from the internet" does that include intranet? What I
> have is a form that lists all the members of a group defined in LDAP.
> The call to get the members for the group is all internal and our
> companies internal ldap server. is that considered "from internet". I
> didn't write this app, just trying to make adjustments. Currently if
> you hit a member of the group that has been terminated/removed from
> ldap, the app errors out because the its it a member of the group in
> which its trying to execute a look on while listing.
>