Przygotowałem podstawowy aplet, w którym użytkownik wybiera plik ze swojego dysku twardego, odczytuje pierwszy wiersz tego pliku i przekazuje go do JavaScript, aby uzyskać dodatkowe przetwarzanie wstępne, a następnie po kliknięciu przycisku przycisk próbuje przesłać ten plik za pomocą żądania POST HTTP. Znalazłem bardzo prosty aplet Open Source do przesyłania plików, które skopiowałem i zmodyfikowałem dla tego ostatniego bitu.Aplet Java Uprawnienia
Kłopot w tym, że nie działa. Wygląda na to, że działa dobrze, ale wtedy mam dwa problemy związane z uprawnieniami. Komunikaty w konsoli Java powiedzieć, że aplet miał odmowa dostępu błędy na dwóch następujących uprawnień:
java.lang.RuntimePermission setFactory
java.io.FilePermission read
Uważam to dziwne, bo myślałem, że pozwolenie na aplet już kiedy zbudowano go z " autopodpisane "zaznaczone w NetBeans, a następnie kliknięte, aby potwierdzić małe wyskakujące okienko bezpieczeństwa w przeglądarce.
Również część, którą zakodowałem, gdzie czyta plik i przekazuje pierwszą linię do JavaScript działa dobrze. Jest to całkiem jasny wskaźnik, że aplet jest w stanie odczytać z lokalnego systemu plików! Problem nie zaczyna się, dopóki nie spróbuję rozpocząć przesyłania. Należy przypuszczać, że proces przesyłania wydaje się działać w nowym wątku, podczas gdy reszta z nich działa w głównej klasie bez tworzenia wątków.
Jestem całkowitą nowicjuszką w Javie i wiem bardzo niewiele o wątkach w Javie; czy muszę jakoś przekazać uprawnienia do tego nowego wątku? Czy coś w tym stylu? Z góry dzięki.
doPrzywilijane jest niezwykle niebezpieczne. Podobnie jak podpisywanie apletów. –
Jak pozwala aplety do odczytu plików. Niemniej jednak, jest tam i odpowiedź na to pytanie. –