questo ti potrà essere utile...
ogni mio nodo dell'albero rappresenta una classe... cliccando su un nodo, carico la classe selezionata e la riporto in una text area...

l'esempio è simile al tuo... cliccando su una voce dell'albero apri un jframe e gli trasmetti l'oggetto recuperato dal nodo dell'albero...

codice:
// EVENTO DI SELEZIONE DEL FILE
			jTree.addTreeSelectionListener(new javax.swing.event.TreeSelectionListener() { 
				public void valueChanged(TreeSelectionEvent e) {    
					DefaultMutableTreeNode node =(DefaultMutableTreeNode) jTree.getLastSelectedPathComponent();
					Object nodeInfo = node.getUserObject();
					NodoJTree ramoSelezionato = (NodoJTree) nodeInfo;
					
					// LETTURA DEL FILE
					String tempString="";  
					try {
						File fileInput = new File("repository/" + ramoSelezionato.link);
						jTextArea_Dettagli.setText(readFile(fileInput.getAbsolutePath()));
						
					} catch (FileNotFoundException e1) {
						System.out.println();
					} catch (IOException e2) {
						e2.printStackTrace();
					}

				}
			});