我的活动对象界面如下:
package com.company.jira.plugin.Reports.aoentities;
import java.util.Date;
import net.java.ao.Accessor;
import net.java.ao.Mutator;
import net.java.ao.Preload;
import net.java.ao.Entity;
import net.java.ao.schema.Table;
@Table("TaskData")
@Preload
public interface TaskData extends Entity {
@Accessor("issues")
String getIssues();
@Mutator("issues")
void setIssues(String issues);
}
现在,我的休息服务班如下:
package com.company.jira.plugin.REST;
import com.crawco.jira.plugin.Reports.aoentities.IssuePlanning;
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import net.java.ao.Query;
...
@Path("/message")
public class TasksDataRestResource {
@POST
@AnonymousAllowed
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
@Path("/save/{start}/{end}/{issues}/{comments}/{startdatetime}")
public Response SaveTasksData(@PathParam("start") Date paramStart,@PathParam("end") Date paramEnd,@PathParam("issues") String paramIssues,@PathParam("comments") String paramComments,@PathParam("startdatetime") String startdatetime)
{
....
...
...
**com.company.jira.plugin.Reports.aoentities.TaskData pi = ao.executeInTransaction(new TransactionCallback() // (1)**
{
@Override
public com.company.jira.plugin.Reports.aoentities.TaskData doInTransaction()
{
com.company.jira.plugin.Reports.aoentities.TaskData pi = ao.create(com.company.jira.plugin.Reports.aoentities.TaskData.class);
pi.setIssues(issues);
...
logger.info("REST Service:before pi.save");
pi.save();
logger.info("REST Service:after pi.save");
return pi;
}
});
return Response.ok(new .....).build();
}
在上面的内容中,我突出显示了“** .... **”这一行,这在执行“atlas-run”时引发了一个错误,错误如下:
C:\atlas-projects\src\main\.....REST\TasksDataRestResource.java:[176,86] incompatible types
found : java.lang.Object
required: com.company.jira.plugin.Reports.aoentities.TaskData
你能建议我这里有什么问题吗?
此外,文件名是“TaskData.java”,与它的活动对象接口名称相同。(在上面的内容中,我已经为“TaskData”提供了完整的限定名称但没有工作,之前,我只保留了“TaskData”并通过导入的命名空间引用)。
(使用 Eclipse 编辑器和 atlas-sdk 4.1.4)。
笔记:
一种奇怪的行为是,它可以工作一段时间但不是每次都有效,通常,每当我遇到错误时,删除“TaskData”界面中的一些空格或行并休息服务类然后它就可以工作了)