Bonjour,
il me faut me connecter à un serveur ftp distant à partir de ma servlet, j'ai pas mal cherché sur le net sans trouvé le moindre tuto sur le sujet. Il y a bien des codes mais assez complexe.
J'ai aussi essayé des petits codes avec sun.net.ftp mais apparemment Glassfish n'aime pas. Faut dire que je comprend pas grand chose, j'avance par tâtonnement :p
Avec ça GlassFish me renvoie ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 FtpClient ftpClient = new FtpClient(); ftpClient.openServer("ftp://192.168.0.87"); // connect to FTP server ftpClient.login("toto", "mdp_toto"); // login ftpClient.binary(); // set to binary mode transfer ftpClient.cd("/Images"); // change directory File file=new File("truc"); ftpClient.closeServer();
Si vous avez un lien, un exemple, un début de code ou je ne sais quoi, ça serait le pied.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 GRAVE: StandardWrapperValve[NewServlet]: PWC1406: Servlet.service() for servlet NewServlet threw exception java.net.UnknownHostException: ftp://192.168.0.87/ at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:177) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:519) at java.net.Socket.connect(Socket.java:469) at sun.net.NetworkClient.doConnect(NetworkClient.java:163) at sun.net.NetworkClient.openServer(NetworkClient.java:118) at sun.net.ftp.FtpClient.openServer(FtpClient.java:488) at sun.net.ftp.FtpClient.openServer(FtpClient.java:475) at NewServlet.service(NewServlet.java:95) at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:431) at org.apache.catalina.core.StandardWrapperValve.preInvoke(StandardWrapperValve.java:462) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:139) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:186) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657) at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:96) at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:142) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030) at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:242) at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:180) at com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:633) at com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:570) at com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:827) at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:152) at com.sun.enterprise.v3.services.impl.GlassfishProtocolChain.executeProtocolFilter(GlassfishProtocolChain.java:71) at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:103) at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:89) at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76) at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:67) at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:56) at com.sun.grizzly.util.WorkerThreadImpl.processTask(WorkerThreadImpl.java:325) at com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:184)
Merci d'avance
Partager