Autor Thema: OSGI Tasklet Development auf dem Domino Server security problems  (Gelesen 12368 mal)

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Wieder mal zwei Fragen vor denen ich gerade stehe und die mir ein wenig Kopfzerbrechen bereiten.

Die erste ist.

Wenn über den Service auf eine Anwendung zugreife die nicht Anonymous hat, dann kommt er da trotzdem hin. Logisch, weil er verwendet ja die Rechte des Servers auf dem die Anwendung läuft. Wenn ich mir den Session Username hole und anzeige sehe ich das auch.
Wie bekomme ich es hin, das er mit den Rechten des angemeldeten Benutzers fragt?

Die Zweite kommt danach.
Ich bekomme eine  Fehlermeldung java.lang.RuntimePermission getProtectionDomain sobald ich versuche auf ein Dokument zuzugreifen. Aus der werde ich definitiv nicht schlau. Meine Vermutung ist, das ich das in der Plugin.xml irgendwie ergänzen muss.
Drei Einträge habe ich gefunden die sich damit beschäftigen aber zwei davon zielen auf Agents und die letzte auf den Client.
http://www-10.lotus.com/ldd/nd85forum.nsf/Feedback+Print?OpenForm&ParentUNID=90958DBEDD30DB748525757B00446F07
http://community.jaspersoft.com/questions/527850/jasperreports-problem-lotus-notesdomino-agent
http://stackoverflow.com/questions/6676558/location-of-currently-running-class-or-jar-file
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
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Ok zu der zweiten Frage habe ich eine Antwort hier bei uns gefunden http://atnotes.de/index.php?topic=44561.0

Aus der Antowrt ergibt sich aber eine neue Frage. Wie muss ich das Servlet bauen, damit er das nicht braucht?
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 eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Zitat
Wie bekomme ich es hin, das er mit den Rechten des angemeldeten Benutzers fragt?
effectiveUserName anstelle von userName
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Was für ein Servlet entwickelst Du denn (welcher ExtensionPoint)?

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
point="org.eclipse.equinox.http.registry.servlets"
sagt zumindest das plugin.xml
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 Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Probier mal

Code
import com.ibm.domino.osgi.core.context.ContextInfo;

Session session = ContextInfo.getUserSession();

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Probier mal

Code
import com.ibm.domino.osgi.core.context.ContextInfo;

Session session = ContextInfo.getUserSession();
Ok das funktioniert für den ersten Teil der Frage. Danke Sven.
Damit läuft das schon mal mit den Rechten des jeweiligen Benutzers.

Bleibt nur noch das zweite Problem.
« Letzte Änderung: 05.02.16 - 11:24:29 von Thomas Schulte »
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 Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Zum zweiten Teil:
Wie greifst Du denn auf das Dokument zu? Wie sieht dein Code aus?

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Class Definition der base class
Code
public class SimpleServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	private NamesDirectory namesDir;
	private DominoConnection domConnection; 
	private String dbUNID;
	
	public SimpleServlet() {
....
Calling Function ...
Code
/*  Execute and action, based on the Parameters passed to the servlet from the URL;  */
private void executeParams(HttpServletRequest req, PrintWriter pw) {
	try
	{
....

Code 
	 pw.println("List the usernames for this session.<BR>") ;
				pw.println(" Value for database parameter was: " + parameterNames.get("databaseunid") + "<BR>");
				this.dbUNID = parameterNames.get("databaseunid");
				this.domConnection = new DominoConnection(this.dbUNID, pw);
--> hier knallt es	this.domConnection.DominoGetUserName(pw);

die Domino Connection ist in einer eigenen Klasse definiert. Und zwar bei zwei von drei Methoden die ich in dieser Klasse aufrufe.
Bei dieser Funktion hier auch
Code
pw.println("List the data for a single project.<BR>") ;
			pw.println(" Value for database parameter was: " + parameterNames.get("databaseunid") + "<BR>");
			this.dbUNID = parameterNames.get("databaseunid");
			this.domConnection = new DominoConnection(this.dbUNID, pw);
			this.domConnection.DominoGetView("(ProjectsByCode)", pw); // -->> der Call hier der in dieselbe Klasse reinschaut funktioniert komischerweise
			pw.println("check if the view is still available.<BR>") ;
			pw.println(this.domConnection.notesViewHashMap.get("(ProjectsByCode)").getName());
			pw.println("... rows in view =  "  + Integer.toString(this.domConnection.notesViewHashMap.get("(ProjectsByCode)").getEntryCount() ));
--> hier auch	this.domConnection.DominoGetDocumentByKey("(ProjectsByCode)",parameterNames.get("projectid"), pw);

Das hier ist die Klasse.
Code
public class DominoConnection {
private Session notesS;
	private DbDirectory notesDbDirectory;
	private Database notesDatabase;
	private View notesView;
	public HashMap<String, View> notesViewHashMap = new HashMap();
	private Document notesDocument;
	public HashMap<String, Document> notesDocumentHashMap = new HashMap();
....

und das hier die aufgerufenen Funktion
Code
/public void DominoGetDocumentByKey(String viewName, String keyID, PrintWriter pw) {
		try {
			pw.println("Debug001");
			if (notesViewHashMap.containsKey(viewName)) {
				pw.println("View found viewName = " + this.notesViewHashMap.get(viewName).getName() + "<BR>");
				notesDocument = this.notesViewHashMap.get(viewName).getDocumentByKey(keyID);
				if (!notesDocumentHashMap.containsKey(notesDocument.getUniversalID())) {
					notesDocumentHashMap.put(notesDocument.getUniversalID(), notesDocument);
					pw.println("document Size = " + notesDocument.getSize() + "<BR>");
				}
			}
		}
		catch (NotesException n) {
			pw.println("NotesException DominoGetdocumentByKey<BR>");
			pw.println(n.toString()+ "<BR>");
		} //catch block
		
	}
	//Check the user
	public void DominoGetUserName(PrintWriter pw) {
		try {
			
				pw.println("Common UserName = " + notesS.getCommonUserName() + "<BR>");
				pw.println("Effective UserName = " + notesS.getEffectiveUserName() + "<BR>");
			
		}
		catch (NotesException n) {
			pw.println("NotesException DominoGetView<BR>");
			pw.println(n.toString()+ "<BR>");
		} //catch block
		
		
	}


Und das hier ist das Teil das funktioniert wenn ich es aufrufe
Code
	//connect and open the specified view in that database add the view to a hash map for further use
	public void DominoGetView(String viewName, PrintWriter pw) {
		try {
			if (!notesViewHashMap.containsKey(viewName)) {
				notesView = this.notesDatabase.getView(viewName);
			if (notesView != null) {
				notesViewHashMap.put(viewName, notesView);
				pw.println("viewName = " + notesView.getName() + "<BR>");
			}
			}
		}
		catch (NotesException n) {
			pw.println("NotesException DominoGetView<BR>");
			pw.println(n.toString()+ "<BR>");
		} //catch block
		
		
	}

Ich weis das ich etwas übersehe. Ich weis nur nicht was.
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 Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Wo liegt denn Dein Code (Klasse "DominoConnection")? (Pfad etc.)?

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Alles im selben Pfad.
Das komische ist, hole ich das Document oder das User Handling in die SimpleServlet Klasse hoch dann bekomme ich die Fehlermeldung nicht.
diese beiden Zeilen hier.
Code
pw.println("Common UserName = " + notesS.getCommonUserName() + "<BR>");
pw.println("Effective UserName = " + notesS.getEffectiveUserName() + "<BR>");
einfach in den Call in der SimpleServlet eingebaut:
Code
pw.println("List the usernames for this session.<BR>") ;
pw.println(" Value for database parameter was: " + parameterNames.get("databaseunid") + "<BR>");
this.dbUNID = parameterNames.get("databaseunid");
this.domConnection = new DominoConnection(this.dbUNID, pw);
//this.domConnection.DominoGetUserName(pw);
pw.println("Common UserName = " + notesS.getCommonUserName() + "<BR>");
pw.println("Effective UserName = " + notesS.getEffectiveUserName() + "<BR>");
und er macht das ohne zu meckern????
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
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Kann das an den Missing Constraints liegen?

Wenn ich vor dem Start die Profüng der Constainrts einschalte, dann zeigt er mir bei der Validation ein paar Fehlermeldungen an:
Missing Constraint für:
Import-Package: com.ibm.domino.osgi.core.context; version="0.0.0"
Import-Package: jaxaX.servlet; version="2.5.0"
Import-Package: javaX.servlet.http; version="2.5.0"
Import-Package: lotus.domino; version="0.0.0"
Import-Package: org.osgi.framework; version="1.3.0"
Require-Bundle: org.eclipse.equinox.http.registry;bundle-Version="0.0.0"

Das ist aber im Manfest mit drin. Komisch.
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
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Könnte es sein das es ein Problem von Equinox und Lazy loading der Bundles ist?
Das ist das Manifest:

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: SimpleServlet
Bundle-SymbolicName: com.cerri.plannerdata;singleton:=true
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: com.cerri.plannerdata.Activator
Bundle-Vendor: CERRI
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.ibm.domino.osgi.core.context,
 javax.servlet;version="2.5.0",
 javax.servlet.http;version="2.5.0",
 lotus.domino,
 org.osgi.framework;version="1.3.0"
Bundle-ActivationPolicy: lazy
Require-Bundle: org.eclipse.equinox.http.registry
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 Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Das der Code direkt im Servlet funktioniert, wundert mich nicht. Dein Code in der Klasse DominoConnection verstößt anscheinend gegen die Security Policy des Bundles.

Kannst Du mal den kompletten Stacktrace posten?

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
HTTP JVM: 2016/02/07 17:52:29.677 SCHWERWIEGEND CLFAD0211E: Exception thrown ::class.method=com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService() ::thread=Thread-12 ::loggername=anonymous
07.02.2016 17:52:29   HTTP JVM:    java.lang.NoClassDefFoundError: com/cerri/plannerdata/DominoConnection$$M$18
07.02.2016 17:52:29   HTTP JVM:    at com.cerri.plannerdata.DominoConnection$$A$18.__jr_selector__(<generated>:50001)
07.02.2016 17:52:29   HTTP JVM:    at com.cerri.plannerdata.SimpleServlet.executeParams(SimpleServlet.java:95)
07.02.2016 17:52:29   HTTP JVM:    at com.cerri.plannerdata.SimpleServlet.doGet(SimpleServlet.java:51)
07.02.2016 17:52:29   HTTP JVM:    at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
07.02.2016 17:52:29   HTTP JVM:    at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
07.02.2016 17:52:29   HTTP JVM:    at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
07.02.2016 17:52:29   HTTP JVM:    at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
07.02.2016 17:52:29   HTTP JVM:    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
07.02.2016 17:52:29   HTTP JVM:    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:59)
07.02.2016 17:52:29   HTTP JVM:    at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule.invokeServlet(OSGIModule.java:167)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule.access$0(OSGIModule.java:153)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule$1.invokeServlet(OSGIModule.java:134)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.AbstractOSGIModule.invokeServletWithNotesContext(AbstractOSGIModule.java:181)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule.doService(OSGIModule.java:128)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIService.doService(OSGIService.java:417)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:350)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:306)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)
07.02.2016 17:52:29   HTTP JVM: 2016/02/07 17:52:29.694 SCHWERWIEGEND CLFAD0246E: Exception occurred servicing request for: /gpplanner - HTTP Code: 500 ::class.method=com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service() ::thread=Thread-12 ::loggername=anonymous
07.02.2016 17:52:29   HTTP JVM:    java.lang.NoClassDefFoundError: com/cerri/plannerdata/DominoConnection$$M$18
07.02.2016 17:52:29   HTTP JVM:    at com.cerri.plannerdata.DominoConnection$$A$18.__jr_selector__(<generated>:50001)
07.02.2016 17:52:29   HTTP JVM:    at com.cerri.plannerdata.SimpleServlet.executeParams(SimpleServlet.java:95)
07.02.2016 17:52:29   HTTP JVM:    at com.cerri.plannerdata.SimpleServlet.doGet(SimpleServlet.java:51)
07.02.2016 17:52:29   HTTP JVM:    at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
07.02.2016 17:52:29   HTTP JVM:    at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
07.02.2016 17:52:29   HTTP JVM:    at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
07.02.2016 17:52:29   HTTP JVM:    at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
07.02.2016 17:52:29   HTTP JVM:    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
07.02.2016 17:52:29   HTTP JVM:    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:59)
07.02.2016 17:52:29   HTTP JVM:    at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule.invokeServlet(OSGIModule.java:167)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule.access$0(OSGIModule.java:153)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule$1.invokeServlet(OSGIModule.java:134)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.AbstractOSGIModule.invokeServletWithNotesContext(AbstractOSGIModule.java:181)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule.doService(OSGIModule.java:128)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIService.doService(OSGIService.java:417)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:350)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:306)
07.02.2016 17:52:29   HTTP JVM:    at com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)
07.02.2016 17:52:29   HTTP Web Server: Command Not Handled Exception [/gpplanner?username&databaseunid=C1257F1000566569] Anonymous
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 Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Code
07.02.2016 17:52:29   HTTP JVM:    java.lang.NoClassDefFoundError

Das ist aber ein anderer Fehler...

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Code
07.02.2016 17:52:29   HTTP JVM:    java.lang.NoClassDefFoundError

Das ist aber ein anderer Fehler...
Ja. Das wäre dann der nächste. Wobei ich nicht kapiere warum der erste jetzt weg ist.  Ich hab nichts geändert. Wobei ich auch hier niocht begreife warum. Die DominoConnection.Class ist in demselben Verzeichnis drin wie alles anderen Klassen. Wieso findet er hier also die Class Definition nicht?
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 Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Füg mal ein

Code
Bundle-ClassPath: .

ins MANIFEST.MF hinzu

EDIT
Und ein
Code
Export-Package: com.cerri.plannerdata
« Letzte Änderung: 08.02.16 - 08:25:44 von Sven Hasselbach »

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Hab ich gemacht und Zack hab ich meinen anderen Fehler wieder...

08.02.2016 08:40:36   HTTP JVM: 2016-02-08 08:40:36 JRebel: ERROR java.security.AccessControlException: Access denied (java.lang.RuntimePermission getProtectionDomain)
08.02.2016 08:40:36   HTTP JVM:    at java.security.AccessController.throwACE(AccessController.java:100)
08.02.2016 08:40:36   HTTP JVM:    at java.security.AccessController.checkPermission(AccessController.java:174)
08.02.2016 08:40:36   HTTP JVM:    at java.lang.SecurityManager.checkPermission(SecurityManager.java:544)
08.02.2016 08:40:36   HTTP JVM:    at java.lang.Class.getProtectionDomain(Class.java:1327)
08.02.2016 08:40:36   HTTP JVM:    at com.zeroturnaround.javarebel.jf.loadManaged(JRebel:409)
08.02.2016 08:40:36   HTTP JVM:    at com.zeroturnaround.javarebel.je.a(JRebel:64)
08.02.2016 08:40:36   HTTP JVM:    at com.zeroturnaround.javarebel.jo.loadReloadableClass(JRebel:423)
08.02.2016 08:40:36   HTTP JVM:    at com.zeroturnaround.javarebel.SDKIntegrationImpl.findReloadableClass(JRebel:88)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:446)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:426)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:193)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:370)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.osgi.framework.internal.core.BundleLoader.findClassInternal(BundleLoader.java:446)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:399)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:387)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:87)
08.02.2016 08:40:36   HTTP JVM:    at java.lang.ClassLoader.loadClass(ClassLoader.java:638)
08.02.2016 08:40:36   HTTP JVM:    at com.cerri.plannerdata.SimpleServlet.executeParams(SimpleServlet.java:95)
08.02.2016 08:40:36   HTTP JVM:    at com.cerri.plannerdata.SimpleServlet.doGet(SimpleServlet.java:51)
08.02.2016 08:40:36   HTTP JVM:    at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
08.02.2016 08:40:36   HTTP JVM:    at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
08.02.2016 08:40:36   HTTP JVM:    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:59)
08.02.2016 08:40:36   HTTP JVM:    at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
08.02.2016 08:40:36   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule.invokeServlet(OSGIModule.java:167)
08.02.2016 08:40:36   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule.access$0(OSGIModule.java:153)
08.02.2016 08:40:36   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule$1.invokeServlet(OSGIModule.java:134)
08.02.2016 08:40:36   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.AbstractOSGIModule.invokeServletWithNotesContext(AbstractOSGIModule.java:181)
08.02.2016 08:40:36   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIModule.doService(OSGIModule.java:128)
08.02.2016 08:40:36   HTTP JVM:    at com.ibm.domino.xsp.adapter.osgi.OSGIService.doService(OSGIService.java:417)
08.02.2016 08:40:36   HTTP JVM:    at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:350)
08.02.2016 08:40:36   HTTP JVM:    at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:306)
08.02.2016 08:40:36   HTTP JVM:    at com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)
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 Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Da ist irgendwas faul mit JRebel:

Code
08.02.2016 08:40:36   HTTP JVM:    at com.zeroturnaround.javarebel.jf.loadManaged(JRebel:409)

In einer Dev Umgebung könntest Du mal

Code
grant {
	java.lang.RuntimePermission "getProtectionDomain";
};

in die Java Policy übernehmen. Oder gleich ein

Code
grant {
  permission java.security.AllPermission;
};

Aber letztlich solltest Du mal bei ZeroTurnAround in den Foren nach dem Problem suchen

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz