如何在PHP中与Java代码进行通信

时间:2013-10-10 05:32:50

标签: java php php-java-bridge

G'日,

我有一个要求,需要在PHP脚本中调用java函数。我已经通过PHP JAVA Bridge概念,但无法从PHP脚本调用。可能是我的过程错了。请查看以下流程我已实施的内容。

  1. 步骤-1  C:\ xampp \ htdocs \ tomcat \ webapp需要害虫JavaBridge.war 在这个webapp。
  2. step - 2  解压缩此(JavaBridge.war)文件。然后去 JavaBridge / WEB-INF / lib /并将以下三个文件和病毒复制到 C:\ XAMPP \ htdocs中\ Tomcat的\ web应用\ BIN

    php-script.jar php-servlet.jar servlet_api.jar

  3. 第3步 编辑Tomcat conf / web.xml。添加以下9行 标有+:

        + <listener><listener-class>php.java.servlet.ContextLoaderListener</listener-class></listener>
        + <servlet><servlet-name>PhpJavaServlet</servlet-name><servlet-class>php.java.servlet.PhpJavaServlet</servlet-class>
        + </servlet>
        + <servlet><servlet-name>PhpCGIServlet</servlet-name><servlet-class>php.java.servlet.fastcgi.FastCGIServlet</servlet-class>
        + <init-param><param-name>prefer_system_php_exec</param-name><param-value>On</param-value></init-param>
        + <init-param><param-name>php_include_java</param-name><param-value>Off</param-value></init-param>
        + </servlet>
        + <servlet-mapping><servlet-name>PhpJavaServlet</servlet-name><url-pattern>*.phpjavabridge</url-pattern>
    

            + PhpCGIServlet * .php         ...
            

  4. 步骤-4 再次启动Tomcat。现在您可以将PHP脚本添加到tomcat。

  5. 步骤 - 5添加PHP测试文件

    <?php require_once("java/Java.inc");
    echo java("java.lang.System")->getProperties(); ?> 
    

    到某些Web上下文,例如“examples”,然后浏览到 http://yourHost.com:8080/examples/test.php

  6. 它工作正常,但是当我在htdocs(http://yourHost.com/test.php)中运行此文件时,它会抛出异常。

    如果我实施了错误的流程,请建议我,或者让我知道是否有任何新界面可以解决此问题。

    我非常感谢Adv的帮助。

1 个答案:

答案 0 :(得分:3)

我认为你需要设置你的php.ini以允许url包含。 The docs