• Publicidad

PerlScript Error error '80004005'

Todo lo relacionado con el desarrollo Web con Perl: desde CGI hasta Mojolicious

PerlScript Error error '80004005'

Notapor Naika » 2014-10-30 01:50 @118

Hola.

Estoy empezando a utilizar Perl, PerlScript, comenzando con una migración de versiones de Perl de 5.005 a 5.16.3.

Tengo problemillas con el entorno de desarrollo al lanzar un simple asp.

La primera carga de la página la realiza correctamente, pero la segunda vez que recargo el mismo asp, peta con un mensaje tal que así:

PerlScript Error error '80004005'

Can't call method "ServerVariables" on an undefined value


SO Windows Server 2012 R2, IIS 8.5 y he instalado Perl 5.16 (32 bits).

Estoy perdida, no encuentro información y la que encuentro no sé interpretar correctamente.

¿A alguien le ha ocurrido algo parecido? ¿Podéis orientarme por dónde buscar?

El código es el siguiente:

Sintáxis: [ Descargar ] [ Ocultar ]
Using asp Syntax Highlighting
  1. <%@LANGUAGE=PerlScript%>
  2. <%
  3. BEGIN { #adcsvn
  4.                 my $sServerName = $::Request->ServerVariables('SERVER_NAME')->Item;    
  5. }
  6.  
  7.  use DBI;
  8.  use LWP::Simple;
  9.  use File::Slurp;
  10.  
  11.  print  "SSSSSSS-3"."\n";
  12.  
  13. %>
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Muchas gracias
Última edición por explorer el 2014-10-30 04:48 @242, editado 1 vez en total
Razón: migracion => migración; informacion => información; donde => dónde;
Naika
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2008-11-09 12:56 @581

Publicidad

Re: PerlScript Error error '80004005'

Notapor explorer » 2014-10-30 05:12 @258

El error indica que el objeto $Request no ha sido inicializado.

Es posible que sea debido a que la sentencia está dentro de una cláusula BEGIN.

Te recomiendo que la saques de ahí, y la cambies por

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. my $sServerName = $Request->ServerVariables('SERVER_NAME')->{Item};
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


La notación la he sacado de esta introducción a PerlScript.

En esta página se comenta que la primera vez que se solicita la página, falla, pero no en las siguientes.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: PerlScript Error error '80004005'

Notapor Naika » 2014-10-30 05:46 @282

Hola.

Muchas gracias por responder.

Lo he probado y sale pantalla en blanco.

He revisado el log del servidor y da un 200 OK.

En ocasiones también falla el Objeto $Response, se cae el entorno y lo tengo que reiniciar.

¿Puede ser algo de la configuración de Perl con ASP? ¿Dónde puedo revisar esto?

También estoy algo perdida en las variables del servidor. ¿En qué biblioteca puedo validar la propiedades o métodos del objeto $Request o $Response? ¿Necesitaría realizar un new o algo parecido para inicializarlas? ¿Y sin son a nivel del servidor, dónde puedo comprobar estas variables en el IIS?

He lanzado esto:

foreach my $item (Win32::OLE::in $Request->ServerVariables) {
$Response->Write($Request->ServerVariables($item)->Item);
}

para obtener el listado de las variables del servidor, y cuando funciona existe.

También he probado a inicializar los objetos de la forma

our ($Response,$Resquest);

pero no funciona.

¿Alguna otra idea?

¡¡Muchas preguntas!! :shock:

Gracias de nuevo :)


<%@LANGUAGE=PerlScript%>
<%

use strict;
use Win32::ASP qw(:strict);


my $sServerName = $Request->ServerVariables('SERVER_NAME')->{Item};


use DBI;
use LWP::Simple;
use File::Slurp;

Print $sServerName;

print "SSSSSSS-3"."\n";

%>
Última edición por explorer el 2014-10-30 10:11 @466, editado 1 vez en total
Razón: tambien => también; configuracion => configuración; Donde => Dónde; que => qué; libreria => biblioteca; necesitaria => ¿Necesitaría; y => ¿Y; Admiraciones
Naika
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2008-11-09 12:56 @581

Re: PerlScript Error error '80004005'

Notapor explorer » 2014-10-30 20:20 @889

El manual de introducción a PerlScript (que te he enlazado en el mensaje anterior) dice que esas dos variables son creadas de forma automática en el momento de arrancar el código. En el punto 4.4 comenta que se puede usar 'use vars' para declararlas.

A lo mejor en el foro de ActiveState / ActivePerl tienes más pistas. Yo en Google no he encontrado apenas nada, salvo el posible bug enlazado antes.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: PerlScript Error error '80004005'

Notapor Naika » 2014-10-31 01:41 @112

Seguiré buscando :wink:

Muchas gracias por tu tiempo y la información.

Un saludo
Naika
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2008-11-09 12:56 @581

Re: PerlScript Error error '80004005'

Notapor Naika » 2014-11-03 07:05 @337

Hola.

He llegado al origen del problema se trata de la libreria PerlSE.dll.

De vez en cuando obtengo este error:

'IActiveScript::SetScriptState()' from 'CActiveScriptEngine::ReuseEngine()'..

¿Alguna idea de qué puede ser?

Muchas gracias.

Un saludo.
Naika
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2008-11-09 12:56 @581


Volver a Web

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron