If you are getting this error:
ASP 0115 : 8000ffff A trappable error occurred in an external object. The script cannot continue running. |
...please see
Article #2171 Otherwise, read on.
The 8000ffff error is actually quite common, and can have a variety of causes / resolutions. Outside of the trappable error message, the most common err.description is 'Catastrophic failure'...
Make sure to use the latest version of MDAC (
MDAC Download Page). If you are using SQL Server, see
KB #243349 for more information.
If you are using a DSN or otherwise ODBC-dependent connection string, use a DSN-less connection string (and in the case of Access, use JET/OLE-DB instead of the generic Access driver). See
Article #2126 for sample connection strings.
Do not store connection or recordset objects in the session or application variables. See
Article #2053 for more information.
If you are using a server-side cursor with an ADODB.Recordset and a transaction, consider using a client-side cursor (adUseClient) or using a default recordset against the connection object (see
KB #187942). Conversely, this error might be caused by issuing an .update or .AddNew call against a default, forward-only recordset - in which case, you should use an INSERT or UPDATE statement directly against the connection object.
If you are retrieving OLE, BLOB, TEXT or IMAGE columns, make sure they are left out of your resultset when they are NULL. You can do this in the WHERE clause by stating:
| WHERE blobColumn IS NOT NULL |
...or alter the output, as per
Article #2150
For SQL Server, if you are connecting using a SQL Server UID/PWD, make sure the database is set up for Mixed Mode authentication, as opposed to just Windows authentication. Also make sure that the SQL Server service is started, and that you are connecting to a valid instance name (if connecting to an instance other than the default).
If you are using Oracle oo4o (OracleInProcServer.XOraSession), you might see this error also:
Active Server Pages error '8002802b' Create object failed |
Make sure the oo4o libraries are installed on the server, and that you are connecting to the server correctly (including identifying a user with appropriate permissions).
If you are using Commerce Server and/or BizDesk, you might see this error:
Active Server Pages (0x8002802B) An error occurred while creating object 'g_MSCSConfiguration'. or Active Server Pages error '8002802b' Create object failed /<file>.asp, line <line> An error occurred while creating object 'MSCSSite'. |
This can happen if you've changed the password of the user who installed commerce server after it's been installed - make sure under Component Services / Security that the components are set to the interactive user, not a specific user account.
If you see an 8002802b error on any other COM object, make sure you are using set objectName = CreateObject("Valid.ProgID"). If you are using an <OBJECT Progid=> tag, this error can be more likely to occur. Also, make sure you are not setting a COM object to a session variable unless it has been explicitly optimized for doing so (see
Article #2053). Make sure that the DLL(s) in question have been registered on the system ... try re-registering them with
regsvr32 <path>\file.dll. Next, check the permissions on the DLL - make sure 'everyone' (if using Windows auth) or IUSR_<machineName> (if using anonymous access) has read and execute permissions. A temporary workaround would be to set the IIS process isolation to low until you find the real solution.
If you are using Access, you might have seen one of the following:
Microsoft OLE DB Provider for ODBC Drivers error '8000ffff' Query cannot be updated because the FROM clause is not a single simple table name. |
or
Microsoft OLE DB Provider for ODBC Drivers error '8000ffff' The query is not updateable because the from clause is not a single simple table name. |
This is usually because you created an ADODB.Recordset, grabbed a query that JOINed two or more tables, and then attempted to perform an AddNew or Update through the recordset object. To resolve this issue, use an INSERT or UPDATE statement directly against the connection object, and if using SQL Server, use a stored procedure call.
If you are using JMail, this is the error code for just about every error there is. I'm going to list out a few of them, and provide explanations and/or workarounds:
| The message was undeliverable |
Make sure the SMTP server is valid, and that it accepts mail relayed from your domain and/or address. You might need to use a component that supports outgoing SMTP authentication, if your SMTP server is blocking relays. <-- FWIW, this is a good thing... as is anything that can reduce the number of SPAMs I get each day.
Make sure that if you are using the AddAttachment method, you pass it a valid path and filename.
| MergeMail: Interface Not Supported |
The MergeMail feature in JMail is only offered in the registered version.