Blog

Deploying web service with Java and Axis

Friday 13 June 2008, 15:40

In this article we see how can we deploy a web service, you need to have apache, tomcat and axis up and running.

To publish a simple webservice:
Create a simple text file, for example “Somma.jws” like this

Put this file in the axis directory, for example: /usr/local/apache-tomcat-6.0.13/webapps/axis
the web service is already available at: http://localhost:8080/axis/Somma.jws
the WSDL: http://localhost:8080/axis/Somma.jws?wsdl
direct invocation via query string: http://localhost:8080/axis/Somma.jws?method=somma&a=2&b=3
This is a very interesting feature, you can call the web service via simple web request, for example via javascript, without the complicated stuff needed for invoking a web service .

The jws web service is simple and fast, but they support only standard type String, int and so on.

For a more complex web service you have to deploy it from the java source code, and a wsdd (Web Service Deployment Descriptor) text file:

Example:

Run (you can do it via the eclipse run dialog)
java org.apache.axis.client.AdminClient deployCompanyWS.wsdd
You have deployed your WS.
try it http://localhost:8080/axis/services/CompanyRepository?method=getCompanyData
note how the Company class is serialized through xml

to undeploy

java org.apache.axis.client.AdminClient undeploy.wsdd

To create Java Helper class to call the web service just created:
java org.apache.axis.wsdl.WSDL2Java http://localhost:8080/axis/services/CompanyRepository?wsdl

C++ & Delphi (obj & dll)

Thursday 29 May 2008, 20:26

Sicuramente lo sapevate già , ma Delphi vi da la possibilità  di inglobare nel vostro eseguibile codice C++ in modi diversi.
Questo nonostante la vastità  di componenti VCL oggi disponibili è sicuramente un fattore a grande vantaggio dell’ambiente , considerando la vastità  di codice scritto in C/c++ per i diversi sistemi.

Un modo abbastnaza interessante e a basso livello, è quello di includere i file “.obj” all’interno della vs applicazione.
I file obj li tratterete esattamente come dll ma per includerli nelle vostre classi è necessaria la direttiva al compilatore LINK strutturata come segue:
{$LINK “obj_filename”}

ex :

un articolo interessante e ben struttarato sull’argomento, che merita sicuramente di essere letto se non si conosce esattamente la tecnologia : http://rvelthuis.de/articles/articles-cppobjs.html

come al solito i miei articoli sono un po stringati, per ulteriori informazioni o approfondimenti scrivete a info@synaptica.info…..

a presto
ivan

Aggiungere utenti al server Subversion

Thursday 8 May 2008, 11:49

Dopo aver correttamente configurato un server subversion con autenticazione webdav (a presto un articolo?) ecco i semplici comandi per aggiungere delle utenze all’svn

utilizzare invece l’opzione -cm se il file deve essere creato (ATTENZIONE: con questa opzione (-cm) il file viene resettatto, cancellate utenze, caput con solo -m vengono invece aggiunte (o aggiornata la password se l’utente esiste già ))

Dopodiché per i permessi alle varie directory bisogna modificare il file di configurazione
Continue reading

Introduzione allo Zend Framework

Tuesday 6 May 2008, 9:18

Il php è un linguaggio estremamente diffuso ed alla portata di tutti grazie ad una bassa curva di apprendimento iniziale e ad una miriade di esempi e script reperibili in rete.
Purtroppo però spesso questi ultimi, per quanto perfettamente funzionanti, non sono dei modelli di buona programmazione e non appena si cerca di estenderli o integrarli nel proprio progetto vengono a galla i problemi.
Costruire la propria libreria è una soluzione, ma ovviamente non la più veloce e neanche la più semplice, specialmente per il neofita che si affida agli esempi per imparare a programmare.
Un’altra è adottare lo Zend Framework.

Continue reading

Delphi for DotNet – WebForm per fare l’upload di un file

Wednesday 23 April 2008, 17:39

COME CREARE UNA PAGINA PER ESEGUIRE GLI UPLOAD CON ASP.NET IN DELPHI PER .NET

A differenza del caro e buon veccio Asp in cui creare una pagina di upload era simile ad un parto, nel nuovo ambiente .Net di Microsoft la cosa è resa molto più semplice grazie all’introduione della classe : System.Web.UI.HtmlControls.HtmlInputFile.

In questo esempio viene creata una pagina ASP.Net da inserire nel vs. progetto per poter permettere agli utenti di eseguire un upload di un file.

Come ben sapete una pagina ASP.Net in delphi 8.0 costituita dal relativo file .aspx e dal code behind contenuto nella dll del progetto. Il “code behind” viene generato in funzione del file della pagina .pas (scritto nel classico object pascal).

Analizziamo cosa dobbiamo inserire nel file .aspx nel nostro caso la pagina l’ho chiamata wf_upload_file.aspx che contiene il codice :

La riga di ns interesse è :

dove l’interprete .Net crea un oggetto il cui nome è “MyFile” questo oggetto fa parte della classe : System.Web.UI.HtmlControls.HtmlInputFile.

La parte di “code behind” il file wf_upload_file.pas :

Da notare l’obbligatorietà  della dichiarazione dell’oggetto MyFile all’interno della classe che definisce la pagina, che non avviene in automatico, anche se dovrebbe delphi 8.0 riconoscere tutti gli oggetti definiti nella pagina .aspx e mantenerne l’allineamento con il .pas. Nell’evento Page_Load viene implementato il codice per salvare il file inviato dall’utente in una posizione del disco.

Ho aggiunto l’uso della libreria uses borland.vcl.sysutils; s per poter accedere alla funzione ExtractFileName della vcl semplicemente perchè non conosco la funzione che esegue le stesse cose nel .Net framework.

Spero che l’articolo sia comprensibile, l’ho effettivamente scritto un po di fretta.

Ciao a tutti

Ivan ….

Scoprite cosa possiamo fare per il vostro business
I nostri linguaggi