code: public Transferable getTransferable(Component c)
      {
          if (c instanceof javax.swing.JTree 
              && ((javax.swing.JTree)c).getModel() instanceof OjbMetaDataTreeModel)
          {
              try
              {
                  javax.swing.JTree tree = (javax.swing.JTree)c;
                  OjbMetaDataTreeModel model = (OjbMetaDataTreeModel)tree.getModel();
                  AttributeDescriptorBase descriptors[] = new AttributeDescriptorBase[tree.getSelectionCount()];
                  for (int i = 0; tree.getSelectionPaths() != null && i < tree.getSelectionPaths().length; i++)
                  {
                      Object o = ((OjbMetaTreeNode)tree.getSelectionPaths()[i].getLastPathComponent()).getAssociatedDescriptor();
                      if (o instanceof AttributeDescriptorBase)
                      {
                          System.err.println("   adding Node" + o);
                          descriptors[i] = (AttributeDescriptorBase) o;
                      }
                  }
                  return new OjbMetadataTransferable(descriptors);
              }
              catch (Throwable t)
              {
                  t.printStackTrace();
              }
          }
          return null;
      }
docs: Return a Transferable with the data you whish to export. You also get
  the Component the DnD actions has been started for. If the component
  supports selection you must first check which items are selected and
  afterwards put those items in the Transferable.
  @param c The component that acts as the drag source
  @return a Transferable containing the exported data