How can I avoid getting an error when passing as argument to the function do-http-request an invalid host.
Is there any way that I can catch the error like the Java's exception-handling mechanism ?
AllegroServe Exception Handling
186 Views Asked by utxeee At
1
There are 1 best solutions below
Related Questions in EXCEPTION
- What should i use Exceptions or Monads for handle if service occur a problem?
- Python Requests: Handling Exceptions and Ensuring Server Response
- What is a better way to allow no user input while also preventing non-number inputs
- New error on random number assigned to local variable , Rails
- spring error exception with oauth2 and securityconfig
- Exception thrown: 'System.InvalidOperationException' in Microsoft.Data.SqlClient.dll
- How to fix this Row nested in Column exception issue in Flutter?
- GDI - Why the printing StartPage() function works in 32 bit but raises an exception in 64 bit?
- Handling Invalid Credential or Login error Exception in Python for Network Devices
- Execution failed for task ':app:compileFlutterBuildDebug'. > Process 'command 'C:\flutter\bin\flutter.bat'' finished with non-zero exit value 1Error:
- .NET 6 Custom Nuget package referencing other packages - Do I have to include the other packages myself?
- How to prevent Unity from catching and ignoring ALL exceptions
- My Google Apps Script renames all files in a folder from data in a spreadsheet. Can someone explain why it returns an exception error?
- Python (pylint): Catching general exceptions in validation procedures
- Need a simple example how to catch a data type error en C++
Related Questions in LISP
- How to copy and paste an autocad table using python
- common lisp type vector of fixnums
- LISP to Batchplot (Publish) Multiple .dwg Models into One PDF
- Make changes to a LISP code for AutoCAD, it is possible?
- FeatureLines civil3d
- Detecting shared structure in tree made of cons cells
- How to load FRL into Clisp?
- Scheme Question - How can I check if there are a list of pairs
- do v. do*: Why does the same code produce a different result?
- undefined variable: COMMON-LISP:PROGN when running DO
- Making an SBCL program stop
- Getting arguments from the command line within SBCL
- "undefined variable: COMMON-LISP-USER::PRIMELIST" warning, using SBCL
- Counting vowels in Lisp
- Exercise 12.10 from the book Scheme and the art of programming
Related Questions in COMMON-LISP
- UTF-8 string has too many bytes using SBCL and babel on Windows 64 bits
- Common Lisp: How to use a macro within a macro?
- How do I get a notification upon table change with Postmodern in Common Lisp?
- in SBCL why does setting *print-circle* to T in LET in common lisp not work, but SETF does print circular list fine?
- Case statement/form errors?
- unexpected interaction between macroexpand-1 and macrolet
- common lisp type vector of fixnums
- Testing with fiveam
- How to load FRL into Clisp?
- How do I force a CFFI-defined foreign library to use a specific version of a shared library?
- SBCL VLIME use CFFI
- SBCL REPL Wrong Reuse of Cons Cells?
- How do you get the SBCL foreign function interface example from the SBCL User Manual to work?
- Reading hash table from file fails
- do v. do*: Why does the same code produce a different result?
Related Questions in ALLEGRO-CL
- ql:quickload evaluates to: Error: Attempt to do an array operation on nil which is not an array
- strange behaviour of (delete .. in Allegro Lisp
- What's so special about the form, img, span, and table tags in AllegroServe's htmlgen?
- Problems using Common LISP running a hill-climbing search
- Object Address in Memory Common Lisp
- Allegro CL, Debugging functions step by step
- Allegro CL Lisp editor
- Unbound variable in Allegro
- How to make Allegro Common Lisp case sensitive?
- Weird non-lisp errors with capturing labels with a lambda and `reduce`
- In Allegro CL and ABCL, can I construct a struct given only its type name?
- In Allegro Common Lisp Form application on Windows is there global form and button variables?
- why is the warning sign popping out? in lisp programming
- Common-Lisp Code was working fine, now "Error: Attempt to take the value of the unbound variable `*OPPONENT*'."
- Allegro CL: creating a standalone binary?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Sure, CL has a very nice condition system. One easy option would be wrapping the call to
do-http-requestinignore-errors, which returnsnil(and the condition as a second value) if an error condition was signalled in the wrapped code. You could then check fornilafterwards.If you want something more like exception handling in Java, just use
handler-caseand add an appropriate error clause (I don't have AllegroServe installed, but I suppose you get asocket-errorfor providing a wrong URL – just change that part if I misread):If you need
finally-like functionality, useunwind-protect:You can even get more fancy, and e.g. use
handler-bindto handle the condition stack upwards by invoking a restart somewhere down the stack, without unwinding it. For example, ifdo-http-requestprovided a restart to try again with another URL, you could handle your error condition by invoking that restart with a new URL to retry. I just mention this for the sake of completeness – it would be overkill for your use case, but being able to resume (possibly expensive) computations easily can be a rather convenient feature.