Я смог достичь этого. Механизм, который я использовал, заключался в том, что файл сценария cgi был упакован в сценарий оболочки. Эта обертка вызывает скрипт cgi и затем вставляет исходный URL со специальным запросом на страницу, которую он использует в качестве апплета. Затем скрипт снова запустится и обнаружит этот специальный запрос. Он сломался бы без вывода, но с возвращаемым значением, которое шеллскрипт перехватит и выведет jar / classfile.
Fetch.sh
run_the_cgi_script.cgi
дело $? в
0) #normal script operation without special requests
#do nothing more
;;
1) #a special request that maps to Test3.class
echo "Content-type: application/java-archive"
echo ""
cat ./$myDIR/Test3.class;;
2) #a special request that maps to someclass.class
echo "Content-type: application/java-archive"
echo ""
cat ./$myDIR/someclass.class;;
3) #a special request that maps to somejar.jar
echo "Content-type: application/java-archive"
echo ""
cat ./$myDIR/somejar.jar;;
ESAC