Spring的集成几乎异常简单,只需要更改配置文件而已.
页面的代码不用动,例如
doc.simple-spring.jsp
<script language=javascript>var springEndPoint=<%=request.getContextPath()%>/remoting/Spring-buffalo;function pageMethod() { var buffalo = new Buffalo(springEndPoint); buffalo.remoteCall(yourObject.yourMethod,[], function(reply) { var Obj = reply.getResult(); })}</script>
web部署描述文件
web.xml
<?xml version=1.0 encoding=UTF-8?><!DOCTYPE web-app PUBLIC -//Sun Microsystems, Inc.//DTD Web Application 2.3//EN http://java.sun.com/dtd/web-app_2_3.dtd><web-app> <display-name>Buffalo Web Remoting Demostration Application</display-name> <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/applicationContext.xml </param-value> </context-param> <servlet> <servlet-name>context</servlet-name> <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet> <servlet-name>remoting</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>4</load-on-startup> </servlet> <servlet-mapping> <servlet-name>remoting</servlet-name> <url-pattern>/remoting/*</url-pattern> </servlet-mapping> </web-app>
以前的buffalo-service.properties文件则不用,applicationContext.xml所替代之.其中引用到的bean可以是任意被Spring托管的bean.这个Controller可以被任意任意方式的ServletDispather调用.
applicationContext.xml
<beans> <bean name=simpleService class=net.buffalo.demo.simple.SimpleService></bean> <bean name=numberService class=net.buffalo.demo.numberguess.NumberGuessService></bean> </beans>
remoting-servlet.xml
<beans> <bean name=/Spring-buffalo class=net.buffalo.spring.BuffaloServiceExporter> <property name=services> <map> <entry key=simpleService> <ref bean=simpleService/> </entry> <entry key=numberService> <ref bean=numberService/> </entry> </map> </property> </bean> </beans>
http://www.javabc.com/