обслуживать общий сетевой каталог с помощью jetty-runner

Мне нужно сделать мою сетевую папку доступной через веб-URL. Я использую причал для обслуживания каталога.

Мой общий сетевой ресурс \\nas01.internal.local. Я могу использовать этот путь в проводнике для просмотра\копирования\удаления файлов. Мне нужно сделать его доступным через веб-URl.

С помощью jetty-runner я могу сделать d:\ доступным через http://localhost:8080,

java -jar jetty-runner.jar d:\

Но я не могу сделать то же самое с сетевым ресурсом

java -jar jetty-runner.jar \\nas01.internal.local

Я получаю следующую ошибку,

2016-05-18 08:18:47.530:INFO::main: Logging initialized @228ms
2016-05-18 08:18:47.561:INFO:oejr.Runner:main: Runner
java.net.MalformedURLException: no protocol: \\nas01.internal.local
        at java.net.URL.<init>(Unknown Source)
        at java.net.URL.<init>(Unknown Source)
        at java.net.URL.<init>(Unknown Source)
        at org.eclipse.jetty.util.resource.Resource.newResource(Resource.java:16
2)
        at org.eclipse.jetty.util.resource.Resource.newResource(Resource.java:14
6)
        at org.eclipse.jetty.runner.Runner.configure(Runner.java:418)
        at org.eclipse.jetty.runner.Runner.main(Runner.java:556)
Usage: java [-Djetty.home=dir] -jar jetty-runner.jar [--help|--version] [ server
 opts] [[ context opts] context ...]
Server opts:
 --version                           - display version and exit
 --log file                          - request log filename (with optional 'yyyy
_mm_dd' wildcard
 --out file                          - info/warn/debug log filename (with option
al 'yyyy_mm_dd' wildcard
 --host name|ip                      - interface to listen on (default is all in
terfaces)
 --port n                            - port to listen on (default 8080)
 --stop-port n                       - port to listen for stop command
 --stop-key n                        - security string for stop command (require
d if --stop-port is present)
 [--jar file]*n                      - each tuple specifies an extra jar to be a
dded to the classloader
 [--lib dir]*n                       - each tuple specifies an extra directory o
f jars to be added to the classloader
 [--classes dir]*n                   - each tuple specifies an extra directory o
f classes to be added to the classloader
 --stats [unsecure|realm.properties] - enable stats gathering servlet context
 [--config file]*n                   - each tuple specifies the name of a jetty
xml config file to apply (in the order defined)
Context opts:
 [[--path /path] context]*n          - WAR file, web app dir or context xml file
, optionally with a context path

Возможно ли это с причалом?


person pinkal vansia    schedule 18.05.2016    source источник


Ответы (1)


Я думаю, что в этом случае лучше всего будет «монтировать» \nas01.internal.local на какой-нибудь локальный диск (скажем, Z:) и указать пристани для работы с ним.

Это монтирование выполняется на уровне ОС, поэтому с точки зрения Java-приложения диск будет вести себя как локальный.

В противном случае, поскольку причина в том, что для общения с NAS недостаточно использовать встроенный URL-адрес Java, вам придется реализовать некоторые протоколы (или лучше использовать сторонние)

person Mark Bramnik    schedule 18.05.2016
comment
Спасибо @mark. Он работал после установки его в локальную папку - person pinkal vansia; 18.05.2016