Autor Thema: Java Agent und Access denied Meldung.  (Gelesen 14006 mal)

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Java Agent und Access denied Meldung.
« am: 30.06.14 - 16:39:42 »
IBM Notes Version 8.5.3 FP3.

Folgendes Problem:
Ich habe hier einen Agenten der in Java geschrieben werden soll.
Über diesen Agenten soll ein Webservice aufgerufen werden. Dieser Webservice läuft über HTTPS aber das ist eine Baustelle die später zu lösen sein wird.

Im Moment bekomme ich beim Aufrufen von:
Pam4ProjectWSASoap soap = (Pam4ProjectWSASoap) me_serv.getPort(Pam4ProjectWSASoap.class);
eine AccessControlException
java.security.AccessControlException: Access denied (java.util.logging.LoggingPermission control)

Die Security Eigenschaften des Agents stehen eigentlich auf:
runtimeSecurityLevel = 3. Allow unrestricted operations with full administration rights.
Das für mich interessante ist, das man, sobald man den Java Agent source Code aufruft, und im Code irgendetwas ändert die Security in den Agent Properties auf  "Run as Web user" geändert wird und sich dann auch nicht mehr ändern lässt, bis man den Agenten im Source gespeichert und geschlossen hat.

Der komplette Code des Agents sieht aktuell so aus:
Code
import lotus.domino.*;
import javax.xml.namespace.QName;
import javax.xml.ws.*;
import java.net.URL;
import javax.swing.JOptionPane;
import java.util.logging.Level;

public class JavaAgent extends AgentBase {

    public void NotesMain() {

      try {
       //   Session session = getSession();
       //   AgentContext agentContext = session.getAgentContext();
       // (Your code goes here)
       //   Document me_Doc = agentContext.getDocumentContext();
       	  java.util.logging.Logger.getAnonymousLogger().setLevel(Level.OFF );

    	  URL me_url = new URL("http://pam-elements20/Pam.Web/pam4Projectws/Pam4ProjectWS.asmx?wsdl");
    	  QName me_qname = new QName("http://www.hs-soft.com/webservices/PAM-STORAGE","Pam4ProjectWSA");

          Service me_serv = Service.create(me_url, me_qname);
          Pam4ProjectWSASoap soap = (Pam4ProjectWSASoap) me_serv.getPort(Pam4ProjectWSASoap.class);
          javax.xml.ws.BindingProvider s=((javax.xml.ws.BindingProvider)soap);
          
          String me_String = soap.ping();
          JOptionPane.showMessageDialog(null, me_String);

      } catch(Exception e) {
    	  e.printStackTrace();
    	  String me_eString = e.toString();
    	  JOptionPane.showMessageDialog(null, me_eString);
       }
   }
   
}

Die Java library mit den entsprechenden Pam4ProjectWSA Klassen ist vorhanden und auch eingebunden.

Hat irgendjemand eine Ahnung warum diese Meldung kommt und wie man die abstellen kann?
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Java Agent und Access denied Meldung.
« Antwort #1 am: 30.06.14 - 16:42:07 »
Und noch eine Information.
Das Teil muss zwingend auf dem Notes Client laufen.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.723
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Java Agent und Access denied Meldung.
« Antwort #2 am: 01.07.14 - 07:37:18 »
Wahrscheinlich musst Du die java.policy auf dem Client anpassen... Schau mal hier im Forum, da gab es schon einige Threads dazu... Und irgendwas war noch, dass man statt der java.policy eine andere Datei benutzen soll, weil die java.policy bei jedem update überschrieben wird...
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen...

Offline Werner Götz

  • Aktives Mitglied
  • ***
  • Beiträge: 213
  • Geschlecht: Männlich
Re: Java Agent und Access denied Meldung.
« Antwort #3 am: 01.07.14 - 07:40:32 »
Diese Sicherheitseinstellungen werden doch über die Datei
    java.policy
im Verzeichnis (abh. vom Installationspfad ...)
    C:\Programm Files\IBM\Lotus\Notes\jvm\lib\security
gesteuert?

Hast Du das dort schon mal überprüft? Die JVM muss bei Änderungen wohl evtl. durchgestartet werden ...

D.h. auch wenn Du die richtigen Einstellungen findest, musst Du später dafür sorgen, dass das auf allen Clients richtig gesetzt ist !?!

-Werner

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: Java Agent und Access denied Meldung.
« Antwort #4 am: 01.07.14 - 08:00:51 »
Die richtige Erlaubnis für das Policy file müsste permission java.util.logging.LoggingPermission "control";

Wenn du dies unter den "default permissions granted to all domains" einträgst, sollte es gehen. Eine andere Möglichkeit wäre es die jar die den kritischen Code enthält in das ext Verzeichnis der JVM des Clients zu deployen. Dann sollte es auch funktionieren.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Java Agent und Access denied Meldung.
« Antwort #5 am: 01.07.14 - 08:52:02 »
@Tode
Anstatt dem java.policy kann die java.pol verwendet werden. Diese sollte nicht überschrieben werden (ausser beim Update auf 9.0.1Fp1 :-) )
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.723
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Java Agent und Access denied Meldung.
« Antwort #6 am: 01.07.14 - 09:20:48 »
@umi: Genau das wars, danke für den Hinweis (besonders, da ich das mit 9.0.1FP1 auch noch nicht wusste)
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen...

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz