Archive for June, 2007

Nel post precedente ho descritto come implementare un piccolo webservice, adesso vediamo come invocarlo con poche righe di codice e utilizzando le stesse librerie. In questo esempio includo anche tutte le informazioni di debug

require_once('nusoap.php');

// Creiamo l'istanza del client
$client = new soapclient('http://www.miosito.com/MyWebService.php');
// Invochiamo il metodo passandogli i parametri giusti
$result = $client->call('MyMethod',
  array('param1' => 'Ciao ', 'param2' => 'a tutti'));
// Visualizziamo il risultato
print_r($result);

// Visualizziamo il pacchetto completo di richiesta/risposta a fini di debug
echo '<h2>Request</h2>';
echo '<pre>';
echo htmlspecialchars($client->request, ENT_QUOTES) . '</pre>';
echo '<h2>Response</h2>';
echo '<pre>';
echo htmlspecialchars($client->response, ENT_QUOTES) . '</pre>';

Ecco fatto, in questa maniera potete invocare il webservice del post precedente. Facile no? ;)

Poco tempo fa ho avuto l’esigenza di implementare un piccolo webservice utilizzando php, effettuando qualche ricerca ho trovato la libreria nusoap, compatibile con php versione 4 e 5 che soddisfava pienamente a tutte le mie esigenze ed è molto semplice ed intuitiva.
Facciamo un piccolo esempio, chiamate questo file MyWebService.php

$namespace = "http://www.miosito.com/";
require("lib/nusoap.php");
$server = new soap_server();
$server->debug_flag = false;
$server->configureWSDL("MyWebService", $namespace);
$server->wsdl->schemaTargetNamespace = $namespace;

// nome del metodo da esporre
$server->register('myMethod',
  // parametri
  array('param1' => 'xsd:string', 'param2' => 'xsd:string'),
  // valore di ritorno
  array('return' => 'xsd:string'),
  // namespace
  $namespace,
  // soapaction
  $namespace . '#myMethod',
  // style
  'rpc',
  // use
  'encoded',
  // descrizione del metodo
  'Concatena due stringhe'
);

function myMethod($param1, $param2){
return $param1.$param2;
}

$HTTP_RAW_POST_DATA = isset($GLOBALS['HTTP_RAW_POST_DATA'])?
$GLOBALS['HTTP_RAW_POST_DATA'] : '';
$server->service($HTTP_RAW_POST_DATA);
exit();

Con queste poche righe di codice è stato creato un webservice, invocabile all’url
http://www.miosito.com/MyWebService.php
che espone un metodo MyMethod che accetta come parametri due stringhe e ne ritorna la concatenazione

E’ appasa in questi giorni una petizione, redatta niente popò di meno che da Renzo Davoli , indirizzata al parlamento e al governo della Repubblica Italiana perchè venga fatto qualcosa in materia di liberalizzazione del software. Avete presente quando comprate un notebook o un pc e dentro vi trovate installato Windows anche se non vi serve? e vi siete mai resi conto che lo pagate?
Come da tanti casi documentati, la legge attuale dice che l’utente se non accetta l’eula, ossia quel testo lungo quando la bibbia che vi si presenta la prima volta che accendete un pc appena comprato e che vi chiede di “accettare le condizioni”, può ottenere il rimborso della copia di Windows previa restituzione della stessa.
Tutti ormai sappiamo che la realtà è diversa e quei pochi che ci sono riusciti ci hanno messo settimane se non mesi, passati a litigare con i vari call center dei produttori di computer. Questo è uno scandalo e un’ingiustizia, una persona che semplicemente vuole far valere i propri diritti in Italia, è costretta a perdere tempo e pazienza perchè lo stato non la tutela. Questa petizione vuole essere lo spunto per cercare di risolvere queste problematiche.

A questo indirizzo trovate la proposta completa redatta da Davoli:

http://www.nonsiamopirati.org/4bersani.html

e qui la petizione da firmare :

http://www.petitiononline.com/liberasw/petition.html

Cerchiamo di essere in tanti, una firma non costa nulla…!

Lu logoCome dal titolo di questo post, giovedi 28 giugno 2007 al Vincanto (Villa Verucchio), in occasione del Versus Rock Festival, suoneranno i miei amici Lu.

Venite numerosi a sentire un po di buona musica!

Giusto due righe per diffondere la conoscenza di simfony, non è l’ennesimo framework di sviluppo web come tanti altri, è un progetto, nato come framework interno per lo sviluppo di applicativi di una software house francese, che ha deciso di condividerne il sorgente con la community.
Ora è alla versione 1.0.3, ed è un’implementazione del protopattern di sviluppo MVC, il punto a favore di questo framework rispetto ad altri (per esempio Cake), è la grandissima mole di documentazione, tra cui un bellissismo libro pubblicato da Apress, e i tanti esempi e tutorial che trovate sul sito di riferimento.
L’argomento è vasto e abbastanza complesso, ma se avete un po di familiarità col linguaggio e non vi spaventate davanti a tonnellate di documentazione in inglese (iniziano ad arrivare anche le prime traduzioni in italiano), provate ad impiegarci un po di tempo e fare qualche tutorial e vi renderete conto della potenza di questo strumento.

http://www.symfony-project.com/

Il blog di rocco zanni is Digg proof thanks to caching by WP Super Cache!