RSSフィードについて

RSSリーダーで、フォーラムの新着投稿情報がチェックできます。
詳しくは下記ページを参照して下さい。

RSSフィード  RSSフィードについて

ご自由に情報交換の場として御利用ください。
また質問の前には「回答を得るには?」を参照してください。


GroupSessionへの要望があれば参考にさせていただきます。
要望リストも参考にしてください。


 
フォーラム  フォーラム
03_プラグイン開発フォーラム
スレッド  タイトル

施設予約からスケジュールSID取得


[ 1785 ] 施設予約からスケジュールSID取得
投稿者: snip
投稿日時:  2009/02/09 16:51:55
施設予約からスケジュールへ同時登録できるように改造しているのですが、新規登録は
作成することができましたが、既に登録している施設予約からスケジュールSIDを取得
するところで解決でいないところが出てきました。

 施設予約の登録画面(rsv110)から、変更登録する時にスケジュールSIDを取得する方法
なのですが、スケジュールSIDをSCD_RSSIDとSCD_USR_SIDから取得します。

 しかし、SchDatadao.daoのpreparaStatementでNullPointerException
が発生し、問題がどうして発生しているのか判らない状況です。

[SchDataDao.dao]に追加
public SchDataModel selectSchRsvRel(SchDataModel bean) throws SQLException {

PreparedStatement pstmt = null;
ResultSet rs = null;
Connection con = null;
SchDataModel ret = null;
con = getCon();

try {
//SQL文
SqlBuffer sql = new SqlBuffer();
sql.addSql(" select");
sql.addSql(" SCD_SID,");
sql.addSql(" SCD_USR_SID,");
sql.addSql(" SCD_GRP_SID,");
sql.addSql(" SCD_USR_KBN,");
sql.addSql(" SCD_FR_DATE,");
sql.addSql(" SCD_TO_DATE,");
sql.addSql(" SCD_DAILY,");
sql.addSql(" SCD_BGCOLOR,");
sql.addSql(" SCD_TITLE,");
sql.addSql(" SCD_VALUE,");
sql.addSql(" SCD_BIKO,");
sql.addSql(" SCD_PUBLIC,");
sql.addSql(" SCD_AUID,");
sql.addSql(" SCD_ADATE,");
sql.addSql(" SCD_EUID,");
sql.addSql(" SCD_EDATE,");
sql.addSql(" SCD_EDIT,");
sql.addSql(" SCE_SID,");
sql.addSql(" SCD_RSSID");
sql.addSql(" from");
sql.addSql(" SCH_DATA");
sql.addSql(" where ");
sql.addSql(" SCD_RSSID = ?");
sql.addSql(" and");
sql.addSql(" SCD_USR_SID = ?");
sql.addValue(bean.getScdRsSid());
sql.addValue(bean.getScdUsrSid());


log__.error(bean.getScdRsSid());
log__.error(bean.getScdUsrSid());
log__.error(sql.toLogString());

pstmt = con.prepareStatement(sql.toSqlString());  ←ここでエラー


log__.error(pstmt);

log__.info(sql.toLogString());
sql.setParameter(pstmt);
rs = pstmt.executeQuery();
if (rs.next()) {
ret = __getSchDataFromRs2(rs);
}
} catch (SQLException e) {
throw e;
} finally {
JDBCUtil.closeResultSet(rs);
JDBCUtil.closeStatement(pstmt);
}
return ret;
}
  引用返信
[ 1786 ] 施設予約からスケジュールSID取得の続き
投稿者: snip
投稿日時:  2009/02/09 16:54:04
SchDataDao.daoの呼び出し元[Rsv110Biz]
RsvSisYrkModel selParam = new RsvSisYrkModel();
selParam.setRsySid(form.getRsv110RsySid());
RsvSisYrkDao yrkDao = new RsvSisYrkDao(con);
selParam = yrkDao.select(selParam); ←RSY_SIDからSCD_RSSIDを取得

SchDataDao schDao = new SchDataDao();
//SCD_USR_SIDセット
scdMdl0.setScdUsrSid(Integer.parseInt(form.getRsv110SelectUsrSid())); 
//SCD_RSSIDセット
scdMdl0.setScdRsSid(selParam.getScdRsSid());

scdMdl = schDao.selectSchRsvRel(scdMdl0); ←ここでスケジュールSIDをゲット


 DBAプラグインを用いて、下記ログのselect文を実行しましたが、正常に結果を取得できて
います。何が悪いのか全く検討がつかない状態です。
 ヒントでもかまいませんのでアドバイス頂けますよう宜しくお願い致します。m(_ _)m

----------------ここからCatalinaのlog---------------------------------------
2009-02-09 16:25:49,890 ERROR jp.groupsession.v2.sch.dao.SchDataDao:681 - 71
2009-02-09 16:25:49,890 ERROR jp.groupsession.v2.sch.dao.SchDataDao:682 - 101
2009-02-09 16:25:49,890 ERROR jp.groupsession.v2.sch.dao.SchDataDao:683 -
select
SCD_SID,
SCD_USR_SID,
SCD_GRP_SID,
SCD_USR_KBN,
SCD_FR_DATE,
SCD_TO_DATE,
SCD_DAILY,
SCD_BGCOLOR,
SCD_TITLE,
SCD_VALUE,
SCD_BIKO,
SCD_PUBLIC,
SCD_AUID,
SCD_ADATE,
SCD_EUID,
SCD_EDATE,
SCD_EDIT,
SCE_SID,
SCD_RSSID
from
SCH_DATA
where
SCD_RSSID = 71
and
SCD_USR_SID = 101

2009-02-09 16:25:49,890 ERROR jp.groupsession.v2.struts.AbstractGsAction:133 - AbstractActionで例外がスローされました。
java.lang.NullPointerException
at jp.groupsession.v2.sch.dao.SchDataDao.selectSchRsvRel(SchDataDao.java:685)
at jp.groupsession.v2.rsv.rsv110.Rsv110Biz.getInitData(Rsv110Biz.java:292)
at jp.groupsession.v2.rsv.rsv110.Rsv110Action.__doInit(Rsv110Action.java:134)
at jp.groupsession.v2.rsv.rsv110.Rsv110Action.executeAction(Rsv110Action.java:103)
at jp.groupsession.v2.struts.AbstractGsAction.execute(AbstractGsAction.java:123)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
  引用返信
[ 1787 ] Re: 施設予約からスケジュールSID取得の続き
投稿者: 良良良
投稿日時:  2009/02/09 17:18:03
> SchDataDao schDao = new SchDataDao();
> //SCD_USR_SIDセット
> scdMdl0.setScdUsrSid(Integer.parseInt(form.getRsv110SelectUsrSid())); 
> //SCD_RSSIDセット
> scdMdl0.setScdRsSid(selParam.getScdRsSid());
>
> scdMdl = schDao.selectSchRsvRel(scdMdl0); ←ここでスケジュールSIDをゲット

Connection がnullなんでしょうね。
SchDataDao のインスタンスを生成するのにConnection を渡す必要がありますね。

例)
SchDataDao schDao = new SchDataDao(con);

  引用返信
[ 1800 ] Re: Re: 施設予約からスケジュールSID取得の続き
投稿者: snip
投稿日時:  2009/02/10 14:17:10
 解説ありがとうございます。全くもってそのとおりでした。
当初は既存コードを見ながらやっていたのですが、最近は既存コードを見なくて
コーディングしているため、ちょっとしたミスが発生するような感じがします。

 ただ、エラーログからでは判断できないのが、結構つらいです。

> Connection がnullなんでしょうね。
> SchDataDao のインスタンスを生成するのにConnection を渡す必要がありますね。
>
> 例)
> SchDataDao schDao = new SchDataDao(con);
 
  引用返信
 
スレッドURL:
 

クラウド版グループウェアbycloud

Twitter
開発スタッフのつぶやき http://twitter.com/gsession_jts
Facebook
メールマガジン
GroupSessionのセキュリティ情報、アップデート情報をお伝えするメールマガジンです。(無料)
メルマガ『速報!GroupSession』
ブログ
スタッフによる開発日誌を公開しています。
「Public JTS スタッフブログ」


Copyright 日本トータルシステム株式会社