私のアクティブなオブジェクト インターフェイスは次のとおりです。
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
ここで何が間違っているのか教えてもらえますか?
また、ファイル名はactiveobjectのインターフェース名と同じ「TaskData.java」です。(上記のものでは、「TaskData」の完全な修飾名を付けましたが、機能しませんでした。以前は、「TaskData」のみを保持し、インポートされた名前空間を介して参照していました)。
(Eclipse エディターと atlas-sdk 4.1.4 を使用)。
ノート:
奇妙な動作の 1 つは、時々動作しますが、毎回ではありません。通常、エラーが発生するたびに、「TaskData」インターフェイスのスペースまたは行をいくつか削除し、サービス クラスを休ませると動作します)