点点滴滴

导航

 

问题:

javax.faces.FacesException: The scope of the referenced object: '#{}' is shorter than the referring object

解决:

Error Message
Adding a map service that contains raster layers to a WebADF project in Eclipse, using the ArcGIS Server plug-in wizards, causes the application to encounter the following fatal exception:


javax.faces.FacesException: The scope of the referenced object: '#{}' is shorter than the referring object



Cause
The faces-config.xml file generated by the ArcGIS Server plug-in generates a managed-bean representing the LayerDefinition for each raster layer in the map service. These managed-beans contain empty references, '${}', for the 'renderer' and 'highlightRenderer' properties, which prevents the application from starting up.


<managed-bean>
     <managed-bean-name>rasterLayer</managed-bean-name>
     <managed-bean-class>com.esri.adf.web.data.query.LayerDefinition</managed-bean-class>
     . . .
     <managed-property>
           <property-name>renderer</property-name>
           <value>#{}</value>
     </managed-property>
     <managed-property>
           <property-name>highlightRenderer</property-name>
           <value>#{}</value>
     </managed-property>
     . . .
</managed-bean>

Solution or Workaround
Delete the managed-bean definitions for raster layers from faces-config.xml.
Delete references to these managed-beans from the WebQuery managed-bean.

posted on 2010-09-02 16:39  attar  阅读(947)  评论(0)    收藏  举报