WebLogic 12.2到12.1丢失了端点

时间:2015-12-11 05:31:56

标签: java rest weblogic12c

你好它相对简单。我在weblogic 12.2上开始了我的项目,但现在我收到了老板的消息,这将是12.1.3安装的具体内容。但是进行一些测试我发现我在12.2上生成的端点休息在12.1.3上不起作用有人会说我为什么......

这是我的一项服务:

 package xxxxxx
 import package.DdcEstado;
 import java.math.BigDecimal;
 import java.util.List;
 import javax.ejb.Stateless;
 import javax.persistence.EntityManager;
 import javax.persistence.PersistenceContext;
 import javax.ws.rs.Consumes;
 import javax.ws.rs.DELETE;
 import javax.ws.rs.GET;
 import javax.ws.rs.POST;
 import javax.ws.rs.PUT;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;


@Stateless
@Path("estados")
public class DdcEstadoFacadeREST extends AbstractFacade<DdcEstado> {
@PersistenceContext(unitName = "Data_Delaer_CentralizerPU")
private EntityManager em;

public DdcEstadoFacadeREST() {
    super(DdcEstado.class);
}

@POST
@Override
@Consumes({"application/xml", "application/json"})
public void create(DdcEstado entity) {
    super.create(entity);
}

@PUT
@Path("{id}")
@Consumes({"application/xml", "application/json"})
public void edit(@PathParam("id") BigDecimal id, DdcEstado entity) {
    super.edit(entity);
}

@DELETE
@Path("{id}")
public void remove(@PathParam("id") BigDecimal id) {
    super.remove(super.find(id));
}

@GET
@Path("{id}")
@Produces({"application/xml", "application/json"})
public DdcEstado find(@PathParam("id") BigDecimal id) {
    return super.find(id);
}

@GET
@Override
@Produces({"application/xml", "application/json"})
public List<DdcEstado> findAll() {
    return super.findAll();
}

@GET
@Path("{from}/{to}")
@Produces({"application/xml", "application/json"})
public List<DdcEstado> findRange(@PathParam("from") Integer from, @PathParam("to") Integer to) {
    return super.findRange(new int[]{from, to});
}

@GET
@Path("count")
@Produces("text/plain")
public String countREST() {
    return String.valueOf(super.count());
}

@Override
protected EntityManager getEntityManager() {
    return em;
}

}

这是ApplicationConfig:

package gt.com.pckg.service;
import java.util.Set;
import javax.ws.rs.core.Application;
@javax.ws.rs.ApplicationPath("rest")
public class ApplicationConfig extends Application {

@Override
public Set<Class<?>> getClasses() {
    Set<Class<?>> resources = new java.util.HashSet<Class<?>>();
    addRestResourceClasses(resources);
    return resources;
}

/**
 * Do not modify addRestResourceClasses() method.
 * It is automatically populated with
 * all resources defined in the project.
 * If required, comment out calling this method in getClasses().
 */
private void addRestResourceClasses(Set<Class<?>> resources) {
    resources.add(gt.com.pckg.service.DdcAlarmaFacadeREST.class);
    resources.add(gt.com.pckg.service.DdcColaDetalleFacadeREST.class);
    resources.add(gt.com.pckg.service.DdcColaFacadeREST.class);
    resources.add(gt.com.pckg.service.DdcDealerFacadeREST.class);
    resources.add(gt.com.pckg.service.DdcEstadoFacadeREST.class);
    resources.add(gt.com.pckg.service.DdcProcesoFacadeREST.class);
    resources.add(gt.com.pckg.service.DdcProgramacionFacadeREST.class);
    resources.add(gt.com.pckg.service.DdcPuntoVentaFacadeREST.class);
    resources.add(gt.com.pckg.service.DdcRolFacadeREST.class);
    resources.add(gt.com.pckg.service.DdcUsuarioFacadeREST.class);
    resources.add(gt.com.pckg.service.ProcessExecutor.class);
}

}

在这种情况下,当您进入localhost:7001 / proyect / rest / estados时,我收到404响应。

我将非常感谢所有的帮助。

1 个答案:

答案 0 :(得分:0)

您好我找到了解决方案,这很简单。

对于sintaxis和12.1.3和12.2.1上的终点指令有很多不同之处?

好吧,因为甲骨文说我们打算在这个表格上这样做......

例如12.2.1上的MediaTypes你将它们设置为http头“application / json”,但在12.1.3上你还使用了MediaType.APPLICATION_JSON

还有像ApplicationConfig这样的其他文件有一些变化......

我的解决方案是将项目设置为新的服务器版本,并在netbeans上再次从数据库生成端点。