。。。 在openshift上使用jersey1.8 ,是很容易的事。 Jersey1.8 使用了 首先,我们有一个空的JBoss Enterprise Application Platf
。。。
在openshift上使用jersey1.8 ,是很容易的事。
Jersey1.8 使用了
首先,我们有一个空的JBoss Enterprise Application Platform 6.0
我之前的账户在使用openshift的时候,已经耗尽3个空间了。还发现有一个空间经常是坏的。没办法,只有在申请个账户继续开辟新空间了。
填完域名之后,他会给出git地址。
Git clone到本地。
。。
代码见附件,有一个bybye项目。下载地址:http://www.oschina.net/code/snippet_932069_19527
①将项目的pom.xml的依赖加入 openshift库中的pom.xml文件。
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.8</version>
</dependency>
②再将src/main/java下的代码加入openshift库中src/main/java目录中。、
③最后一步,修改web.xml文件。
加入一个serclet。
<servlet>
<servlet-name>jersey-serlvet</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.mkyong.rest</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey-serlvet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
。。
最后是git add, gi commit, git push…
效果如下:
先看下java代码
@Path("/json/metallica")
public class JSONService {
.@GET
@Path("/get")
@Produces(MediaType.APPLICATION_JSON)
.public List<Track> getTrackInJSON() {
.Track track = new Track();
track.setTitle("Enter Sandman");
track.setSinger("Metallica");
Track track2 = new Track();
track.setTitle("Enter Sandman");
track.setSinger("Metallica");
ArrayList<Track> s = new ArrayList<Track>();
s.add(track);
s.add(track2);
return s;
.}
}
我的域名是http://github-chinesejie.rhcloud.com
那么对应的web.xml 文件跟 java代码,
http://github-chinesejie.rhcloud.com/rest/json/metallica/get
。打开这个链接,看到效果:
对了,xx.rhcloud.com的域名已经被----墙,上面的浏览器显示是代理得到的。可以使用openshift的绑定域名机制来解决这个问题。
Ends 。。author:[email protected]