これはapplicationのカスタムコントローラを作成しています。/ssf/samples/customcontrollerの下にサンプルがあります。私のカスタムコントローラーの場合は、kablinkプロジェクトでも使用されているSpring-Frameworkを使用します。今私はgetSimpleJdbcTemplate().queryForObject(query, String.class, new MapSqlParameterSource());
経由でSQLスクリプト(my.sql)を実行しようとしています。 SQLファイルには1行しか含まれていませんselect label from question where questionid=3;
ファイルを読み込めませんでした。
しかし、私はファイルmy.sqlを読んで問題に遭遇します。コントローラでは、私は、メソッドgraph.sunburstJson()
を呼び出し、ビューに戻り値をプッシュする:
public class GraphDaoImpl extends SimpleJdbcDaoSupport implements GraphDao{
@Override
public String sunburstJson() {
String query="select label from question where questionid=5";
try {
InputStream is = getClass().getResourceAsStream("/resources/spring/sql/my.sql");
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
LineNumberReader fileReader = new LineNumberReader(reader);
query = JdbcTestUtils.readScript(fileReader);
} catch (IOException e) {
StringWriter errors = new StringWriter();
e.printStackTrace(new PrintWriter(errors));
query=errors.toString()+"help";
}
return query+"test";//(String)getSimpleJdbcTemplate().queryForObject(query, String.class, new MapSqlParameterSource());
}
}
:
ApplicationContext context = new ClassPathXmlApplicationContext("/resources/spring/config/GraphBean.xml");
GraphDao graph = (GraphDao) context.getBean("graphDao");
response.setRenderParameter("json", graph.sunburstJson());
は方法sunburstJsonがファイルを読み込む場合、私はmy.sqlの内容を返すようにしてみてください表示するには
しかし、エラーも出力もないので、何が起こったのか説明できません。これは、JdbcTestUtils.readScript
という行から始まります。
EncodedResource resource = new EncodedResource(context.getResource("/resources/spring/sql/my.sql"), "UTF-8");
と同じ動作私は
BufferedReader reader = new BufferedReader(new FileReader(new File("resources/spring/sql/my.sql")));
//or
BufferedReader reader = new BufferedReader(new FileReader("/resources/spring/sql/my.sql"));
をしようとした場合、私は、例外スタックトレースを発見していないファイルを取得します。
私たちがお手伝いできるように、より多くの情報とコードを提供してください。 –
私の編集内容をご覧ください。 – StellaMaris