• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Copy and paste java objects using System clipboard

 
Ranch Hand
Posts: 158
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
hi
I want to copy paste java objects between java applications using the system clipboard.So far only string transfer is supported between java programs and system clipboard.
One way to transfer java objects is to encode them as string and put into the system clipboard, then retrieving the string from the system clipboard and decoding them to the respective object. Ofcourse both the applications have to know the encoding and decoding algorithm.
For this I took the help of 'core Java 2 Volumn II-Advanced Features' from 'The Sun Microsystems Press, Java Series', by C.S. Horstmann and G. Cornell (ISBN 81-7808-018-4).
They have a sample code in the CD and it's explaination in Chapter 7.
Here it is what it is supposed to do:
1. It displays a frame where I can load any jpg/gif image by clicking on the open menu item.
2. I can copy the image by clicking on the copy menu item. the image goes to the system clipboard as a string (object encoded as string in MIME format).
3. Open the same application (maybe in another shell prompt or close the first applicaiton and open it again in the same prompt).
4. click on 'paste' menu item. Ideally it should display the image loaded and copied in the first frame.
But When I compiled and executed the program, on clicking paste ,it gives this exception:

My OS is Windows NT 4.0. The version of java I am using as I obtained by typing 'java -version' is:
java version "1.3.1"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-b24)
Java HotSpot(TM) Client VM (build 1.3.1-b24, mixed mode)
What surprised me is that though in the exception message, it is stated the exception occured at :
sun.awt.windows.FullyRenderedTransferable.getTransferData, there is no sun.awt.windows.FullyRenderedTransferable class or interface (I tried by typing javap sun.awt.windows.FullyRenderedTransferable which gave me class not found, though other classes in sun.awt.windows can be found).
Can anyone explain me the problem. Copy/paste in the same application(frame) gives no problem.
Is the code not correct or if it is, why is it wrong in my computer JDK .
Here is the sample code.
Simple copy and paste it into a file MimeClipboardTest.java and compile and run it:

Please let me know the problem. Do you have any alternate approach of passing any objects through System clipboard.
thanks in advance
regards
Tanveer
[ June 07, 2002: Message edited by: Tanveer Rameez ]
 
Ranch Hand
Posts: 1170
Hibernate Eclipse IDE Ubuntu
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
If its serializable it should be transferrable if you make your own Transferrable.
Your talking about between JVM transfers right?
I have done lots of intra JVM transfers but I truthfully havent done the inter JVM transfer..
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic