JAX RS – 04 – RESTEasy & WildFly Implementation

Merhaba Arkadaslar
Bu bolumde Eclipse uzerinde WildFly implementation’ini yapacagiz ve sonrasinda RESTEasy projemizin WildFly uzerinde deploy edilmesini inceleyecegiz.

RESTEasy , JAX-RS urunu JBoss/Red Hat  tarafindan gelistirilmektedir. WildFly eski versiyonlarinda  JBoss AS (Application Server) olarak gecmektedir. JBoss AS 7.1 versiyonundan sonra WildFly olarak isimlendirildi.
https://en.wikipedia.org/wiki/WildFly

Download & Setup WildFly

Eclipse’te yeni bir Server tanimlayalim , oncelikle gerekli adapter’i kurmamiz gereklidir.
Asagidaki gibi JBoss AS , WildFly & EAP Server Tools secenegini secip yuklemeyi yapalim.

wildfly

Linkten “Java EE7 Full & Web Distribution” i indirelim. Servlet-Only Distribution versiyonu sadece Servlet Container ozelligi gostermektedir.
Dosyayi indirip ilgili dizine cikartalim.

http://wildfly.org/downloads/

Tekrardan Server ekleme ekranina geldigimizde JBoss Community altinda WildFly gorebiliriz.

new server wildfly

Next -> Next dedikten sonra WildFly icin Home Directory de ilgili path bilgisini gosterelim.
Finish diyip olayi bitirelim.

wildfly home directory

Create New Project

Simdi de yeni bir proje olusturalim ve bu projemizi WildFly uzerinde deploy edelim.
WildFly altinda modules/system/layers/base altinda jar dosyalari yer almaktadir.

modules/system/layers/base/org/jboss/resteasy/resteasy-jaxrs/main altina giderek resteasy jarlarini gorebiliriz.

wildfly jars

RESTEasy icin gerekli Jar’lar halihazirda WildFly Application Server’da yer almaktadir.
Yeni bir Dynamic Web Project olusturalim ve Target Runtime olarak WildFly 10.x Runtime secelim.

RestMessageController.java

package controller;

import javax.ws.rs.GET;
import javax.ws.rs.Path;

@Path("/messages")
public class RestMessageController {

	@GET
	@Path("/message")
	public String getMessage() {

		String message = "Welcome to injavawetrust.com RESTEasy Tutorial !";
		return message;

	}
}

RegisterApplication.java

package service;


import java.util.HashSet;
import java.util.Set;

import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

import controller.RestMessageController;

@ApplicationPath("/root-path")

//@ApplicationPath("/") OK
//@ApplicationPath("/*") Don't use /*
//@ApplicationPath("/root-path/*") Don't use /*

public class RegisterApplication extends Application{

       private Set<Object> singletons = new HashSet<Object>();
       
       public RegisterApplication() {
          singletons.add(new RestMessageController());
       }
       
       @Override
       public Set<Object> getSingletons() {
          return singletons;
       }
}

Project Structure

Run Application

Ornegimizi calistiralim ;

http://localhost:8080/injavawetrust.resteasy.wildfly/root-path/messages/message

Kaynak kodlar/Source :
injavawetrust.resteasy

Yazimi burada sonlandiriyorum.
Herkese Bol Javali Gunler dilerim.
Be an oracle man , import java.*;
Levent Erguder
OCP, Java SE 6 Programmer
OCE, Java EE 6 Web Component Developer

Print Friendly, PDF & Email

Leave a Reply

Your email address will not be published. Required fields are marked *