package library.client;

import javax.naming.InitialContext;


import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.lang.reflect.Method;
import java.sql.ResultSet;
import javax.ejb.*;
import javax.naming.*;
import javax.swing.*;

import library.common.*;


@SuppressWarnings("serial")
public class LibraryClient extends JFrame implements ActionListener {

	
  private @EJB LibraryInterface li;

  private JTextField book_author = new JTextField(10);
  private JTextField book_title = new JTextField(10);
  private JTextField book_isbn = new JTextField(10);
  private JLabel author_label = new JLabel("Podaj autora:");
  private JLabel book_title_label = new JLabel("Podaj tytul ksiazki");
  private JLabel isbn_label = new JLabel("Podaj ISBN");
  private JTextArea display_books = new JTextArea(20,50);
  private JButton search = new JButton("Search");
  private ResultSet resultset;
  public LibraryClient() {
    this("DEFAULT_CONTEXT");
  }
private JPanel createPanel1(){
	 JPanel panel = new JPanel();
	 panel.add(author_label);
	 panel.add(book_author);
	
	 panel.add(book_title_label);
	 panel.add(book_title);
	 
	 panel.add(isbn_label);
	 panel.add(book_isbn);
	 
	 panel.add(search);
	 ////search.setActionCommand("ISBN");
	 search.addActionListener(this);
	 return panel;
}
private JPanel createPanel2(){
	 JPanel panel = new JPanel();
	 panel.add(display_books);
	 return panel;
}

private JPanel createPanels(){
	JPanel panel = new JPanel();
    //Use default FlowLayout.
    panel.setLayout(new BorderLayout());
    panel.add(createPanel1(), BorderLayout.NORTH);
    
    panel.add(createPanel2(), BorderLayout.SOUTH);
    return panel;
}
  public  LibraryClient(String appType) {
    
    init(appType);
    JFrame frame = new JFrame("Library");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//    /final Table table = new Table();
    frame.setContentPane(createPanels());
    frame.pack();
//    /f.setLocationRelativeTo(null);
    frame.setVisible(true); 
  }

  public void actionPerformed(ActionEvent e) {
	  
	    try {
	    	display_books.setText("");
	    	display_books.setText("Wyszukane Ksiazki\n");
	    	if(!book_author.getText().equals("")){
	    		resultset=li.getBookByAuthor(book_author.getText());
	    		
	    	
	    	}else if(!book_title.getText().equals("")){
	    		resultset=li.getBookByName(book_title.getText());
	    	}else if(!book_isbn.getText().equals("")){
	    		resultset=li.getBookByISBN(book_isbn.getText());
	    	}else {
	    		System.out.println("Before->resultset=li.getAllBooks()");
	    		resultset=li.getAllBooks();
	    		System.out.println("After->resultset=li.getAllBooks()");
	    	}
	    	while(resultset.next()){
	    		System.out.println("in while resultset.next()");  
   			 String name = resultset.getString("name");
   		        String author =resultset.getString("author");
   		        String isbn = resultset.getString("ISBN");
   		        display_books.append("\n"+ name + " " + author +" "+ isbn);
   	      
	    	
	    	
	    	
	    	}
	    } catch(Exception exc) { exc.printStackTrace(); }
  }

  private void init(String type) {
    if (type.equals("JAVA_APP")) li = new library.ejb.LibraryBean();
    else if (type.equals("JAVA_CLIENT")) {
      try {
        InitialContext ic = new InitialContext();
        li = (LibraryInterface) ic.lookup("library.common.LibraryInterface");
      } catch (NamingException e) {
        e.printStackTrace();
      }
    }
  }



  public static void main(String[] args) {
    if (args.length >= 1) new LibraryClient(args[0]);
    else new LibraryClient();
  }


}

jak uruchamiam aplikacje z bata z parametrem JAVA_CLIENT
wyrzuca exception kiedy dochodzi do jednej z tych funcji

resultset=li.getBookByAuthor(book_author.getText());
resultset=li.getBookByName(book_title.getText());
resultset=li.getBookByISBN(book_isbn.getText());
resultset=li.getAllBooks();

Prosze o pomoc
Dziekuje