Domanda

Al momento, ho una sacco di Java che fa tutti i tipi di cose carine e sono felice con lui. Il codice è a riga di comando che sono stati grandi finora, ma di recente ho deciso che voglio fare le funzionalità disponibili tramite web-services. Dato che il mio è complessa e sono contento del modo in cui è scritto, non voglio passare attraverso il dolore di porting ad altre lingue. Così mi sono messo in viaggio google per scoprire quali esistono server web (su una macchina Linux, anche se è interessante ascoltare la risposta senza questa limitazione).

Da quello che ho potuto trovare, sembra che ci sono due opzioni valide: Apache Tomcat e Sun Java Server .

Quali sono i motivi per scegliere uno sopra l'altro? quali sono la forza di ogni e quali sono i punti deboli? O, forse, c'è una terza che è molto più semplice, flessibile e meno ingombrante.

Chiunque?

È stato utile?

Soluzione

facile, flessibile e non ingombrante, che sarebbe Jetty , ma anche Simpleweb potrebbe essere utile. Tu non dire molto sul software in modo che io non sono davvero sicuro, ma per un programma a riga di comando, non credo che avete bisogno di tutte le cose JavaEE.
I server principali sono questi .
Credo che l'Apache Tomcat vs Glassfish (Sun Java Server) la discussione è irrilevante per le vostre esigenze, qualunque farebbe.

Altri suggerimenti

Ci sono molti contenitori per le applicazioni web Java , tutti hanno i loro punti di forza e di debolezza . Se siete alla ricerca di un contenitore per supportare un'applicazione aziendale, probabilmente si dovrebbe dare un'occhiata a come si differenziano e lavorare fuori che si adatta il vostro business ei driver IT.

La cosa fondamentale è che tutti supportano la specifica servlet - le vostre applicazioni web può essere eseguito in qualsiasi di loro - il che significa che è possibile cambiare idea facilmente. Alcuni di loro anche un sostegno più delle specifiche Java Enterprise Edition, quindi potrebbe essere troppo pesante per le vostre esigenze.

Se siete appena iniziato, io suggerirei Tomcat. E 'piuttosto semplice, ma è affidabile, veloce da eseguire e start up, e che ha un veramente facile interfaccia di distribuzione webapp web-based.

La tua domanda è in realtà un po 'troppo ambiguo e in largo. infatti è possibile eseguire codice Java a qualsiasi la macchina che ti piace, a prescindere dalla lingua che si programmato l'interfaccia webbased in. È possibile ad esempio creare un sito web basato su PHP che interagisce con un'applicazione Java "backend" ( "l'applicazione a riga di comando", come lo chiami tu). L'unico requisito è quello di avere un JRE sulla macchina server. Quindi praticamente tutto come interfaccia web basta: CGI, PHP, ASP, Python, eccetera, è il nome. Fintanto che ha accesso al runtime di comando sottostante, che è nell'esempio PHP essere fatto da exec().

Ma Java, in realtà Java EE, fornisce anche un'interfaccia di programmazione delle applicazioni web: JSP / Servlet API , il componente web della grande Java EE API . Questo rende l'integrazione con l'applicazione "a riga di comando Java" molto di più senza soluzione di continuità. Si può fondamentalmente solo mettere la vostra applicazione nel classpath e import / accesso / usarlo in una classe Servlet reale modo Java:

YourApplication app = new YourApplication();
Result result = app.doStuff();
// ...

Per poter eseguire JSP / Servlet (JSP è alla fine in realtà anche una Servlet), avete bisogno di un cemento implementazione delle API Servlet (l'intero Java EE è solo una specifica astratta). Apache Tomcat è bene iniziare con, l'altra alternativa popolare è Eclipse Jetty . Questi sono servletcontainers 'semplici' che implementa l'API Servlet, con molo di essere un approccio più integrato di essa (è possibile configurare ed eseguire come un "plain vanilla" Java Application). Ma se è necessario supportare / coprire gli altri aspetti della API Java EE così, allora avete bisogno di un server applicazioni, come ad esempio Sun GlassFish o JBoss AS (sia che tra l'altro utilizza Tomcat come servletcontainer parte).

Per ulteriori informazioni su JSP / Servlet, posso consigliare il Coreservlets.com tutorial .

Apache Tomcat dovrebbe fare il bene.

Il concetto di serie per l'esecuzione di codice all'interno di un server web è il "Servlet API" dai raggi solari.

In sostanza fornisce alcune interfacce che il server Web utilizza per richiamare il codice, e definisce come il web server dovrebbe comportarsi. Questo permette di scrivere codice molto generico che può essere eseguito in una varietà di contenitori web che implementano l'API Servlet. Vedi l'articolo di Wikipedia per i dettagli - http://en.wikipedia.org/wiki/Java_Servlet .

Sono disponibili in tutte le taglie, a seconda delle esigenze. Qualche piccolo abbastanza per incorporare nella propria applicazione, un po 'di molto grande. L'API servlet consente di non cura.

Per un principiante, il modo più rapido per ottenere installato e funzionante, è quello di scaricare la versione completa di Netbeans, che include il supporto completo per fare questo tipo di lavoro, ed è dotato di un contenitore di servlet.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top