UNPA_Consulta sobre instalacion de libreria WSF/PHP

Buenos dias al realizar la instalacion de la ilbreria WSF/PHP en linux para UBUNTU 13.04, con PHP 5.3.10 siguiendo los pasos mostrados a continuacion se nos presenta un error en el paso 6.2, desplegandose el siguiente error al ejecutar el .php. ¿Esto significa que la libreria no fue instalada correctamente? ¿Como podemos solucionar este error?
13.
Fatal error: WSService::__construct(): error creating service in /var/www/testService.php on line 9

Los pasos que se siguieron fueron los siguientes:

  1. Instalar los requisitos previos descriptos en el apartado 3.1 desde apt-get:

aptitude install php5-dev php5-xsl make gcc libxml2-dev unzip libssl-dev libaxis2c libxml2-dev libaxis2c0

  1. Descompactar la librería WSF/PHP de la siguiente manera:

cd /usr/src

wget http://dist.wso2.org/products/wsf/php/2.1.0/wso2-wsf-php-src-2.1.0.zip

unzip wso2-wsf-php-src-2.1.0.zip

cd wso2-wsf-php-src-2.1.0

  1. Compilar e instalar la librería WSF/PHP:

./configure //compila los paquetes que se estan instalando en forma manual.

make

make install

  1. Configurar el archivo php.ini agregando o modificando la siguiente línea:

echo “extension=wsf.so” > /etc/php5/conf.d/wso2.ini

include_path = “.:/usr/share/php;/usr/src/wso2-wsf-php-src-2.1.0/scripts”

  1. Reiniciar el Apache ejecutando la siguiente sentencia:

/etc/init.d/apache2 restart

  1. Verificación
    6.1. Crear un archivo phpinfo.php y verificar que “Additional .ini files parsed” contiene “wso2.ini”. Chequear además que las extensiones “wsf” y “xsl” estén instaladas. A continuación se muestra la estructura del archivo phpinfo.php:
<?php phpinfo(); ?>

6.2. Ejecutar el script testService.php. A continuación se muestra la estructura del archivo testService.php:

<?php function greet($message) { $responsePayloadString = <<<XML Hola Cliente! XML; $returnMessage = new WSMessage($responsePayloadString); return $returnMessage; } $service = new WSService(array("operations" => array("greet"))); $service->reply(); ?>

Deployed services
testServices.php
Available Operations
*greet

Desde ya gracias.

Saludos
Paola Vidal

Hola Paola,

la verdad que no se que decirte con respecto al error. En gral nosotros no usamos los ejemplos provistos por la libreria para hacer el testeo, sino las operaciones que estan dentro del proyecto toba_referencia.

De todas maneras, si la compilacion funciono correctamente… y la instalacion creo los archivos correspondientes, no deberias tener mayores inconvenientes al menos con PHP 5.3.

Para cuando se pasen a PHP 5.4, el archivo de WSO2 no les va a servir… nosotros hosteamos una copia modificada en el trac de toba para poder compilar la libreria con 5.4, de otra manera no funciona. Tenelo en cuenta para el dia que hagan el cambio.

Si podes proba la operacion ‘Sin Seguridad’ del menu ‘Servicios Web’ para ver si funciona o no la libreria, ya que el framework le mete un poco de overhead encima y hace un manejo particular. Cualquier cosa seguimos por aca.

Saludos

Buen dia Ricardo,
Ante todo gracias por tu respuesta. Te describo el error que sale al ejecutar la operación “Sin seguridad”.
Igualmente te comento que vamos a instalar el SIU-Toba pero sobre Debian y te cuento como salio todo.

El error es:

Error , NO Response Received

Opciones:

Array
(
    [to] => http://localhost//toba_referencia/2.4/servicios.php/serv_sin_seguridad
    [useWSA] => 0
    [responseXOP] => 1
    [useMTOM] => 1
)

Headers Respuesta:

Array
(
    [Date] => Tue, 25 Mar 2014 11:44:26 GMT
    [Server] => Apache/2.2.22 (Ubuntu)
    [X-Powered-By] => PHP/5.3.10-1ubuntu3
    [Set-Cookie] => TOBA_SESSID=6fb051osnj3tt2cug3pqh0ten4; path=/
    [Expires] => Thu, 19 Nov 1981 08:52:00 GMT
    [Cache-Control] => no-store, no-cache, must-revalidate, post-check=0, pre-check=0
    [Pragma] => no-cache
    [Vary] => Accept-Encoding
    [Content-Length] => 150
    [Content-Type] => text/html
)

Saludos
Paola

Hola Paola,

definitivamente hay algo que no esta bien ahi:

  • Primeramente verificaria que el WS este activado, por ahi no esta habilitado. Eso lo podes hacer via el archivo ini o si estas en la 2.4.x de Toba desde toba_usuarios

  • Si el paso anterior esta bien, revisaria los logs de la libreria (suelen estar en el tmp) y de ultima intentaria reinstalarla.

Saludos