Gostaria de indicar aqui um otimo site para e-books (sobre TI) em ingles.Nele, podemos achar inumeros livros sobre diversas linguagens e, alem disso, caso esteja interessado em um livro em especial que eles nao tenham, podemos postar no forum deles pedindo pelo livro. Ja fiz isso e em poucos dias eles disponibilizaram.O site e o seguinte: http://www.wowebook.com/. Aproveitem. Existe uma forma de debugar o Java Agent no Designer, mas e totalmente instavel, o Designer trava e tem que ser fechado o tempo todo.Entao vamos usar o Eclipse para debugar nosso Agent Java. E recomendavel que se deixe um eclipse apenas para isso, pois vamos mudar a JRE do Eclipse para usar a JRE do Notes. Caso use o mesmo Eclipse para outras aplicacoes Java, tera que ficar alterando o JRE padrao o tempo todo.Primeiramente, crie um projeto java no eclipse como o nome que preferir. Crie a classe JavaAgent. Cole o seguinte codigo:import lotus.domino.*;public class JavaAgent extends AgentBase { private Database database; private Session session; public JavaAgent() { } public JavaAgent(Session s, Database d) { this.session = s; this.database = d; } // public static void main(String[] args) { Session sess=null; Database db=null; JavaAgent ag; // Initialize Notes NotesThread.sinitThread(); try { sess = NotesFactory.createSession(); // start a Notes session db = sess.getDatabase("", "nomeDaDatabase.nsf"); // simulate home database for agent ag = new JavaAgent(sess, db); /* simulate agent object with session and database*/ ag.NotesMain(); // call main routine of agent } catch(NotesException ne) { System.out.println(ne.id + " " + ne.text); } catch (Exception e) { e.printStackTrace(); } finally { try { if (db != null) db.recycle(); if (sess != null) sess.recycle(); } catch (Exception x) {} NotesThread.stermThread(); } } public void NotesMain() { Session session = null; AgentContext agentContext = null; try { if (this.session != null) // Already have an agent context. { session = this.session; } else { // Need to get agent context. session = this.getSession(); if (session==null) throw new NotesException(NotesError.NOTES_ERR_ERROR, "Could not get current session at start of agent."); agentContext = session.getAgentContext(); if (agentContext==null) throw new NotesException(NotesError.NOTES_ERR_ERROR, "Could not get agent context at start of agent."); this.database = agentContext.getCurrentDatabase(); if (this.database==null) throw new NotesException(NotesError.NOTES_ERR_ERROR, "Could not get current database at start of agent."); } } catch(NotesException ne) { System.out.println(ne.id + " " + ne.text); return; } catch (Exception e) { e.printStackTrace(); return; } //Your code goes here!!! }} Aparecera erros em todos os objetos do Notes, pois ainda nao colocamos a JVM/JRE do Notes.Vamos mudar o JRE do Eclipse. Va no menu: Window > Preferences.Va em Java > Installed JREs.Clique em Add, selecione Standard VM, clique em Next. Em JRE home, clique em Directory e selecione o diretorio da JVM do Notes. Exemplo: C:\Program Files\IBM\Lotus\Notes\jvmColoque um nome de sua preferencia e clique em Finish. Agora marque a JVM do Notes como padrao.Apenas de OK.Agora vamos para a segunda parte. Quando voce estiver programando o Java Agent no Eclipse, ele ja vai usar a JVM do Notes, estando disponiveis todos comandos vindos do Notes para Java Agent. Mas tambem precisamos usar essa JVM na hora de executar o programa e