[Seasar-user:15413] [Teeda] <select></select>が表示されない

中谷 圭吾 [E-MAIL ADDRESS DELETED]
2008年 8月 16日 (土) 15:32:30 JST


こんにちわ。中谷と申します。

Teedaを利用して開発をしていますが、<select id=""></select>でエラーが出て困っています。

環境としては

javaは1.6.0_06
seasar2.4.27
Teeda1.0.13-sp2
glassfishV2U2

です。
問題の現象が起こるhtmlのソース
<form id="Form">
<div><span id="messages"></span></div>
<input type="hidden" id="searchClientNumberItemsSave"/>
<select id="searchClientNumber"></select>
</form>

Pageクラスのソース

private String searchClientNumber;
 private List<Map> searchClientNumberItems;

 private ClientService clientService;

 public String getSearchClientNumber() {
  return searchClientNumber;
 }

 public void setSearchClientNumber(String searchClientNumber) {
  this.searchClientNumber = searchClientNumber;
 }

 public List<Map> getSearchClientNumberItems() {
  return searchClientNumberItems;
 }

 public void setSearchClientNumberItems(List<Map> searchClientNumberItems) {
  this.searchClientNumberItems = searchClientNumberItems;
 }

 public ClientService getClientService() {
  return clientService;
 }

 public void setClientService(ClientService clientService) {
  this.clientService = clientService;
 }

 public Class initialize() {
  return null;
 }

 public Class prerender() {
  searchClientNumberItems = clientService.selectListValue();
  return null;
 }

問題のところのログ
・・・スタックトレースの手間でgetSearchClientNumber()が呼ばれ、valueもlabelも設定されていることが確認できています。なのに何故?!

[#|2008-08-16T15:22:58.265+0900|INFO|sun-appserver9.1|javax.enterprise.system.stream.out|_ThreadID=17;_ThreadName=httpSSLWorkerThread-8080-1;|2008-08-16 
15:22:58,265 [httpSSLWorkerThread-8080-1] DEBUG 
org.seasar.framework.aop.interceptors.TraceInterceptor - BEGIN 
jp.co.annex.nbs.web.item.SearchPage#getSearchClientNumberItems()
|#]

[#|2008-08-16T15:22:58.265+0900|INFO|sun-appserver9.1|javax.enterprise.system.stream.out|_ThreadID=17;_ThreadName=httpSSLWorkerThread-8080-1;|2008-08-16 
15:22:58,265 [httpSSLWorkerThread-8080-1] DEBUG 
org.seasar.framework.aop.interceptors.TraceInterceptor - END 
jp.co.annex.nbs.web.item.SearchPage#getSearchClientNumberItems() : 
[{value=1, label=ASKUL}, {value=2, label=KYOKUL}, {value=3, label=中谷商店}]
|#]

[#|2008-08-16T15:22:58.281+0900|INFO|sun-appserver9.1|javax.enterprise.system.stream.out|_ThreadID=17;_ThreadName=httpSSLWorkerThread-8080-1;|2008-08-16 
15:22:58,281 [httpSSLWorkerThread-8080-1] DEBUG 
org.seasar.teeda.extension.util.TeedaExtensionErrorPageManagerImpl - label
java.lang.NullPointerException: label
 at 
org.seasar.framework.util.AssertionUtil.assertNotNull(AssertionUtil.java:44)
 at javax.faces.model.SelectItem.setLabel(SelectItem.java:88)
 at 
org.seasar.teeda.extension.component.TUISelectItems.getValue(TUISelectItems.java:94)
 at 
javax.faces.internal.SelectItemsIterator.getNextFromUISelectItems(SelectItemsIterator.java:88)
 at 
javax.faces.internal.SelectItemsIterator.getNextSelectItem(SelectItemsIterator.java:80)
 at 
javax.faces.internal.SelectItemsIterator.hasNext(SelectItemsIterator.java:57)
 at 
org.seasar.teeda.core.render.html.HtmlSelectManyListboxRenderer.encodeHtmlSelectListboxEnd(HtmlSelectManyListboxRenderer.java:75)
 at 
org.seasar.teeda.core.render.html.HtmlSelectManyListboxRenderer.encodeEnd(HtmlSelectManyListboxRenderer.java:68)
 at 
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:348)
 at 
org.seasar.teeda.core.util.RendererUtil.renderChild(RendererUtil.java:330)
 at 
org.seasar.teeda.core.util.RendererUtil.renderChildren(RendererUtil.java:340)
 at 
org.seasar.teeda.core.util.RendererUtil.renderChild(RendererUtil.java:328)
 at 
org.seasar.teeda.core.util.RendererUtil.renderChildren(RendererUtil.java:340)
 at 
org.seasar.teeda.core.util.RendererUtil.renderChild(RendererUtil.java:328)
 at 
org.seasar.teeda.core.util.RendererUtil.renderChildren(RendererUtil.java:340)
 at 
org.seasar.teeda.extension.render.TViewRootRenderer.encodeBegin(TViewRootRenderer.java:65)
 at 
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:330)
 at javax.faces.component.UIViewRoot.encodeBegin(UIViewRoot.java:100)
 at javax.faces.webapp.UIComponentTag.encodeBegin(UIComponentTag.java:247)
 at javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:184)
 at org.seasar.teeda.extension.taglib.TViewTag.doStartTag(TViewTag.java:98)
 at 
org.seasar.teeda.extension.html.processor.ElementProcessorImpl.processTag(ElementProcessorImpl.java:145)
 at 
org.seasar.teeda.extension.html.processor.ElementProcessorImpl.process(ElementProcessorImpl.java:138)
 at 
org.seasar.teeda.extension.html.processor.ElementProcessorImpl.process(ElementProcessorImpl.java:119)
 at 
org.seasar.teeda.extension.html.impl.HtmlViewHandler.renderView(HtmlViewHandler.java:157)
 at 
org.seasar.teeda.extension.html.impl.HtmlViewHandler.renderView(HtmlViewHandler.java:143)
 at 
org.seasar.teeda.core.lifecycle.impl.RenderResponsePhase.executePhase(RenderResponsePhase.java:39)
 at 
org.seasar.teeda.core.lifecycle.AbstractPhase.execute(AbstractPhase.java:57)
 at 
org.seasar.teeda.core.lifecycle.LifecycleImpl.render(LifecycleImpl.java:131)
 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:101)
 at 
org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
 at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
 at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
 at 
org.seasar.framework.container.hotdeploy.HotdeployFilter.doFilter(HotdeployFilter.java:63)
 at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
 at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
 at 
org.seasar.framework.container.filter.S2ContainerFilter.doFilter(S2ContainerFilter.java:77)
 at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
 at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
 at 
org.seasar.extension.filter.EncodingFilter.doFilter(EncodingFilter.java:69)
 at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
 at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
 at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
 at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
 at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
 at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
 at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
 at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
 at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
 at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
 at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
 at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
 at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
 at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
 at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
 at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
 at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
 at 
com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUnificationPipeline.java:380)
 at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
 at 
com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
|#]


<select>部分を抜かすと問題なく動作するのですが。。。



Seasar-user メーリングリストの案内