Как да посочите пътя на jar файловете, които са пакетирани във WAR

История: Създавам табло за управление с помощта на PHP и FusionCharts (за създаване на диаграма) за нашия уебсайт. Една от характеристиките на FusionCharts е да запазва диаграмата на сървъра, но за това сървърът трябва да поддържа Java (1.3 или по-нова). Приложението ще има php файлове и библиотека batik (набор от jar файлове), за да поддържа функцията „експорт към сървър“. Тази функция работи напълно добре на localhost, тъй като на моята машина работят както PHP, така и Java. От друга страна за сървъра, нашите хостинг доставчици за уебсайта успяха да инсталират Java на нашия PHP сървър и за да изпълним приложението ми, те искат да качим WAR файл. Създадох WAR файл на библиотеката batik и го качих на сървъра. Намира се на www.domainname.com:9080/batik (9080, защото използва различен порт за Java)

Проблем: В един от PHP файловете има препратка към един от jar файловете, намиращи се в библиотеката batik. Документацията на FusionCharts предполага, че ще трябва да препратя jar файла, използвайки абсолютния път на този jar файл.

За localhost не създадох WAR файл [batik е просто директория] и кодът изглежда така: define ('BATIK_PATH', 'C:\wamp\www\BatikSAMPLE_v3.3.1sr3_Eval\V3.3.1SR3\Resources\batik\batik-rasterizer.jar');

За сървъра трябваше да създам WAR файл за batik и опитах подобен код като по-долу за файла на сървъра: define ('BATIK_PATH', '/var/www/vhosts/domainname.com:9080/batik/batik-rasterizer.jar'); но не съм сигурен дали мога да препратя jar файла директно, както по-горе, от WAR файл. Не се получи по този начин.

Общ преглед на файловата йерархия на batik: batik (родител) има поддиректория „lib“ (която се състои от множество jar файлове), а също и jar файл „batik-rasterizer.jar“ на основното ниво, който Опитвам се да се позова на.

Нямам опит в Java и не съм използвал jar и war файлове преди. Исках да се уверя дали пътят, който дадох в скрипта, е правилен начин за препратка към jar файлове, които са опаковани в WAR файл, а също и дали пропускам нещо, поради което приложението не работи.

Благодаря


person Anirudh Gooner    schedule 10.06.2014    source източник


Отговори (1)


Разбира се, ще ви трябва Java, за да използвате експортера на батик. Текущата ви настройка казва, че сте разположили batik файловете на tomcat сървър, поради което сте качили WAR файла. Всъщност не е нужно да правите това.

Просто качете jar файловете на всяко място, където вашият PHP код има достъп и дефинира BATIK_PATH. Кажете ми дали това работи.

person Bhargav Nanekalva    schedule 11.06.2014