Объекты окна и документа просто предоставляются веб-браузерами и не являются частью стандарта ECMAScript , который реализует Rhino. Они предназначены для доступа скрипта к текущему окну браузера и HTML-документу. Объект документа на самом деле является реализацией W3C DOM .
Rhino является чистой реализацией ECMAScript / JavaScript 1.7 и поэтому не знает ничего о HTML-страницах, окнах и браузере в целом. Это язык сценариев общего назначения, который в основном встроен в веб-браузер, и поэтому вы обычно можете использовать глобальные объекты, предоставляемые браузером.
Конечно, вы можете определить некоторые глобально доступные объекты с именами «окно» и «документ», которые являются просто заглушками, которые ничего не делают, но сценарий, который вы хотите выполнить, вероятно, использует некоторые методы и / или свойства для них, поэтому тебе не сильно поможет. Если вы хотите выполнить сценарий, который был написан для выполнения в среде браузера, вам необходимо предоставить полную среду, подобную браузеру.
Если это возможно и имеет смысл в контексте сервера, это другой вопрос ...