2

私は何かのプロトタイピングに取り組んでおり、誰かが私を助けてくれることを望んでいます。Add event to calendariCalファイル(.ics)をダウンロードして開くリンクを作成して、カレンダーに追加できるようにしようとしています。

コンテナとしてJerseyとtomcatを使用したJax-RSを使用しており、iCal4jパッケージを持っています。クライアントはjQuery/backboneです。

  1. どちらがデータを返す正しい方法かわかりません。icsファイルを作成して、それを返す前にどこかに保存する必要がある場合、またはiCal4jからCalendarOutputterファイルストリームを返送する必要がある場合はどうなりますか?
  2. icsファイルを作成した場合、どこに保存しますか?WEB-INFフォルダー?どのように?
  3. ファイルストリームを返す場合、Jax-RXの正しい@Produces(?)は何ですか?

ありがとう、レイ

4

1 に答える 1

4

データを返すためのファイルを作成しないでください。Calendarオブジェクトを直接返すことができるはずです。次のようなものを試してください:

@GET
@Path("calendar")
@Produces("text/calendar")
public Response generateCalendar() {
  Calendar calendar = new Calendar();
  // Generate your calendar here
  ResponseBuilder builder = Response.ok();
  builder.header("content-disposition", "attachment;filename=calendar.ics");
  builder.entity(calendar.toString());
  return builder.build();
}
于 2012-08-16T19:59:08.987 に答える