Перевод описания Кевина Клейна; последнее обновление 21.10.2009

Как установить WebObjects 5.4 на Windows

  1. Что нужно

  2. Установить Java и Apache

  3. Скопировать файлы WebObjects с Вашего Mac (или из HelloWOrld)

    В данном описании WebObjects будет установлен на диск C: и apache будет в папке c:/apache.

    Создайте в файловой системе Windows следующую структуру:

    C:/Apple
    	Library
    		Frameworks
    		WebObjects
    			Configuration
    			JavaApplications
    	Local
    		Library
    			Frameworks
    			WebObjects
    				Applications
    				Configuration
    				Extensions

    Скопируйте файлы Frameworks из /System/Library/Frameworks на Маке в C:/Apple/Frameworks:

    JavaDirectToWeb.framework
    JavaDTWGeneration.framework
    JavaEmbedding.framework
    JavaEOAccess.framework
    JavaEOApplication.framework
    JavaEOControl.framework
    JavaEODistribution.framework
    JavaEOGeneration.framework
    JavaEOInterface.framework
    JavaEOInterfaceCocoa.framework
    JavaEOInterfaceSwing.framework
    JavaEOProject.framework
    JavaEORuleSystem.framework
    JavaEOTool.framework
    JavaFoundation.framework
    JavaFrameEmbedding.framework
    JavaJDBCAdaptor.framework
    JavaJNDIAdaptor.framework
    JavaWebObjects.framework
    JavaWebServicesClient.framework
    JavaWebServicesGeneration.framework
    JavaWebServicesSupport.framework
    JavaWOExtensions.framework
    JavaWOJSPServlet.framework

    Скопируйте файлы JavaMonitor.woa и wotaskd.woa из /System/Library/WebObjects/JavaApplications на Маке в c:/Apple/Library/JavaApplications

    Скопируйте /System/Library/WebObjects/WODocumentRoot на Маке в корневую папку для документов apache. Если Вы не используете D2W or D2JC, я думаю, Вы можете пропустить обе папки Java.

    Скопируйте, как минимум, файлы jar из /Library/WebObjects/Extensions на Маке в c:/Apple/Local/Library/WebObjects/Extensions.

    axis.jar
    axis-ant.jar
    commons-discovery-0.2.jar
    commons-logging-1.0.4.jar
    derby.jar
    derbyclient.jar
    jaxrpc.jar
    log4j-1.2.14.jar
    saaj.jar
    serializer.jar
    servlet.jar
    wsdl4j-1.5.1.jar
    xalan.jar
    xercesImpl.jar
    xml-apis.jar
  4. Добавить переменную среды

    Под "System" добавьте переменную среды NEXT_ROOT = C:/Apple

  5. Установить Apache Adaptor

    Скопируйте файл mod_WebObjects.so в c:/apache/modules

    Совет

    В некоторых случаях apache не стартует на системе Windows Server с этим модулем.
    В этом случае нужно установить .Net Framework (3.x) на Вашу систему.

  6. Сконфигурировать Apache

    Откройте файл httpd.conf, расположенный c:/apache/conf, найдите строку "LoadModule rewrite_module modules/mod_rewrite.so" и разместите прямо перед ней следующую строку:

    LoadModule WebObjects_module modules/mod_WebObjects.so

    В конце файла httpd.conf добавьте следующие строки:

    # WebObjects 5.4: Enable the WebObjects module. loadModule should be added before mod_rewrite
    Include conf/extra/httpd-webobjects.conf

    Найдите запись <Directory /> и раскомментируйте последние 2 строки

    <Directory />
        Options FollowSymLinks
        AllowOverride None
    #    Order deny,allow
    #    Deny from all
    </Directory>

    Создайте файл httpd-webobjects.conf в папке c:/apache/conf/extra :

    # WebObjects 5.4: Enable the WebObjects module. Should be loaded before mod_rewrite
    # LoadModule WebObjects_module modules/mod_WebObjects.so
    
    # Path to the Document Root of your Webserver,
    # it should contain a directory named WebObjects
    WebObjectsDocumentRoot c:/apache/htdocs
    
    # You can change the 'cgi-bin' part of WebObjectsAlias to whatever you
    # prefer (such as Apps), but the 'WebObjects' part is required.
    WebObjectsAlias /Apps/WebObjects
    
    # Here are the 3 possible configuration modes.
    # The apache module uses one of them to get information
    # about your deployed applications.
    # 1085 is the reserved port on which wotaskd processes listen to by default.
    
    # Host List Configuration
    # wotaskd is started automatically on supported platforms,
    # so this is the default mode.
    # The apache module gets its configuration from the wotaskds
    # listed on the configuration line
    # For multiple hosts:
    # WebObjectsConfig http://<name-of-a-host>:<port-on-a-host>,http://<name-of-another-host>:<port-on-a-host> <interval>
    # For localhost:
    WebObjectsConfig http://localhost:1085 10
    
    # Multicast Configuration
    # The apache module gets its configuration from all wotaskds
    # that respond to the multicast call on the subnet
    # WebObjectsConfig webobjects://239.128.14.2:1085 10
    
    # File Configuration
    # The apache module gets its configuration from one file
    # WebObjectsConfig file://<path-to-a-xml-config-file> 10
    
    # To enable public access to the WOAdaptorInfo page, uncomment the following line
    # WebObjectsAdminUsername public
    
    # To enable the WOAdaptorInfo page with restricted access,
    # uncomment the next two lines and set the user and password
    # To access the WOAdaptorInfo page with restricted access,
    # use a URL like: http://webserver/cgi-bin/WebObjects/WOAdaptorInfo?user+password.
    # WebObjectsAdminUsername user
    # WebObjectsAdminPassword password
    
    # To change the logging options, read the following comments:
    # The option name is "WebObjectsLog" and the first value indicates the path of the log file.
    # The second value indicates the log level. There are five, in decreasing informational order:
    # 	"Debug",    "Info",    "Warn",    "Error",    "User"
    #
    # Note: To enable logging, touch '/tmp/logWebObjects' as the administrator user (usually root).
    #
    # The following line is the default:
    # WebObjectsLog /Library/WebObjects/Logs/WebObjects.log Debug

    Нужно перезапустить Apache Service, чтобы изменения были учтены.

  7. Установить WOTaskDaemon как сервис Windows Service

    Чтобы установить wotaskd как сервис Window, нужны средства третьих фирм.
    Например, можно использовать FireDaemon и добавить новый Service:
    Executable: C:\Apple\Library\WebObjects\JavaApplications\wotaskd.woa\wotaskd.CMD
    Working Directory:C:\Apple\Library\WebObjects\JavaApplications\wotaskd.woa

    (Если кто-то найдет бесплатное средство, дайте мне знать)

    Чтобы протестировать систему Вы можете установить WO Monitor как сервис:
    Executable: C:\Apple\Library\WebObjects\JavaApplications\JavaMonitor.woa\JavaMonitor.CMD
    Working Directory:C:\Apple\Library\WebObjects\JavaApplications\JavaMonitor.woa

  8. Проверить установку

    Если все было сделано правильно, наступил момент маленькой проверки. Для начала, проверим, работает ли wotaskd?

    Откройте браузер и зайдите по адресу http://<myhost>:1085

    Если он работает, Вы должны увидеть в окне браузера конфигурацию хоста. Если WOMonitor еще не работает как сервис, стартуем его двойным щелчком на ...\JavaMonitor.woa\JavaMonitor.CMD.
    Ждем несколько секунд и обращаемся по адресу http://<myhost>:56789

    Вы должны увидеть главное окно WOMonitor. Теперь Вы можете устанавливать свое WO-приложение.