rmi -> imageIcon

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
hi,
ich habe einen server auf dem ich mit bildern arbeite. nun möchte ich gerne das wenn der client daten abruft, das auch die bilder im client angezeigt werden.
die bilder auf dem server lasse ich mir als imageicon im jlabel anzeigen. wie übertrage ich nun aber das bild zum client so das es angezeigt werden kann?!

danke für jeden tip!!
 

doctus

Bekanntes Mitglied
der server bekommt die methode:

Code:
public JLabel getImage(){
return NameDeines Labels;
}

Diese kannst du ja dank rmi auch vom Clienten aufrufen. somit bekommst du dann das JLabel mit dem Bild.
 
G

Guest

Gast
hi...
danke für die antwort... das hat geklappt...
nun möchte ich auch gerne von den clients neue bilder zum server übertragen.

habe versucht ein File-Objekt zu übergeben
Code:
 public void writeFile(File strFile) throws RemoteException {
      serverGUI.writeFile(strFile);
      return;
    }

da bekomme ich jedcoh folgende fehler meldung:

Exception in thread "AWT-EventQueue-0" java.nio.channels.NonReadableChannelException
at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:719)
at sun.nio.ch.FileChannelImpl.transferFromFileChannel(FileChannelImpl.java:540)
at sun.nio.ch.FileChannelImpl.transferFrom(FileChannelImpl.java:603)
at GWH_serverGUI.writeFile(GWH_serverGUI.java:3021)
at GWH_server.writeFile(GWH_server.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)
at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247)
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:126)
at GWH_server_Stub.writeFile(Unknown Source)
at GWH_client.writeFile(GWH_client.java:171)
at GWH_clientGUI.writeFile(GWH_clientGUI.java:1879)
at GWH_clientGUI$2.actionPerformed(GWH_clientGUI.java:948)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:5488)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
at java.awt.Component.processEvent(Component.java:5253)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1778)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)



? was mache ich denn nun wieder falsch. File implements Serilizable...

oder gibt es vielleicht auch eine andere möglichkeit die datei auf den server zu bekommen?!

danke für jede hilfe...
:bahnhof:
 
G

Guest

Gast
sorry... mein fehler...

das File kommt an, nur wie schreibe ich es nun auf die platte?!

Code:
public void writeFile(File strFile) {
...

:autsch: irgendwie steh ich auf'm schlau...
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben