Pra*_*ats 3 java arraylist object jaxb
这是我的功能,它添加了两个不同的对象.
@GET
@Path("/getApplicationEnv")
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
public List<Object> getApplicationEnv(){
List<ApplicationDTO> allApplication = applicationService.getAllApplication();
List<Application> Applist = new ArrayList<Application>();
for(ApplicationDTO d: allApplication)
{
Application a = new Application();
a.setApplicationId(d.getApplicationId());
a.setApplicationName(d.getApplicationName());
a.setCreateTime(d.getCreateTime());
a.setOwner(d.getOwner());
Applist.add(a);
}
List<EnvironmentDTO> allEnvironments = environmentService.getAllEnvironments();
List<Environment> Envlist = new ArrayList<Environment>();
for(EnvironmentDTO d: allEnvironments)
{
Environment e = new Environment();
e.setEnvironmentId(d.getEnvironmentId());
e.setEnvironmentName(d.getEnvironmentName());
e.setOwner(d.getOwner());
e.setCreateTime(d.getCreateTime());
Envlist.add(e);
}
ArrayList<Object> obj= new ArrayList<Object>();
obj.addAll(Applist);
obj.addAll(Envlist);
return obj;
}
Run Code Online (Sandbox Code Playgroud)
目前我正在使用Object的ArrayList来添加两个对象,但是我收到以下错误:
*SEVERE:找不到Java类java.util.ArrayList和Java类型java.util.List的消息正文编写器,找不到MIME媒体类型application/xml*
我尝试过制作一个共同的父类,但是我有一些普通类的属性,所以不可能有一个共同的父类.
任何人都可以建议我实现这一目标吗?
你可以尝试改变
ArrayList<Object> obj= new ArrayList<Object>();
obj.addAll(Applist);
obj.addAll(Envlist);
Run Code Online (Sandbox Code Playgroud)
至
ArrayList<MyModel> obj= new ArrayList<MyModel>();
MyModel mm = new MyModel();
mm.setVal1(Applist);
mm.setVal2(Envlist);
obj.add(mm);
Run Code Online (Sandbox Code Playgroud)
UPDATE
class MyModel
{
private ApplicationDTO appDTO;
private EnvironmentDTO enDTO;
//getters settters here
}
Run Code Online (Sandbox Code Playgroud)
这里MyModel只是一个模型类,有两个fields按照你的要求..
希望这有帮助