sql >> Database teknologi >  >> RDS >> Oracle

Kørsel af et eksempel på RMI-applikation

ComputeEngine exception:
java.security.AccessControlException: access denied ("java.net.SocketPermission" "127.0.0.1:1099" "connect,resolve")

Du bruger en sikkerhedsmanager, og du har ikke givet den tilladelse i din .policy-fil.

-Djava.security.manager -Djava.rmi.server.codebase=file:/Users/name/Documents/workspace/PiComputationRM/src/compute/compute.jar -Djava.security.policy=/Users/name/Documents/workspace/PiComputationRM/server.policy

Der er flere problemer:

  • en fil:kodebase vil ikke fungere, medmindre den angiver en delt placering, der er synlig med det navn for klienten og registreringsdatabasen. Det ligner ikke en af ​​dem.

  • du skal kontrollere, om det er det korrekte navn for politikfilen

  • du behøver ikke engang en sikkerhedsmanager eller -politik på serveren, medmindre klienten indstiller sin egen kodebase og vil levere klasser til dig. Det sker ikke i dette eksempel.

-Djava.security.policy=/Users/name/Documents/workspace/PiComputationRM/client.policy

Dobbelttjek dette navn.

java -Djava.security.policy="server.policy" src/engine/ComputeEngine.java
Error: Could not find or load main class src.engine.ComputeEngine.java

Selvfølgelig gjorde du det. Du gav en kompileringskommando til JVM. Brug kommandoen i selvstudiet. Du navngiver ikke .java-filer til JVM.

Du burde have dobbelttjekket dit arbejde i forhold til selvstudiet i stedet for. Du har læst vejledningen forkert mindst to steder.

Jeg vil også stille spørgsmålstegn ved, om du overhovedet har brug for kodebase-funktionen. Jeg ville starte med at fjerne det og sikkerhedscheferne helt, og bare få det til at fungere uden dem. Det er for meget af en komplikation for et første RMI-projekt.




  1. Tilslutning af SQL Server til Oracle

  2. Håndtering af negative værdier med sql

  3. Hvordan opretter jeg en midlertidig tabel for at sortere den samme kolonne efter to kriterier ved hjælp af Django's ORM?

  4. Indsæt billede i databasen