У меня есть проект JSF 2.0 + Spring, и в некоторых случаях возникают какие-то странные вещи, когда я пытаюсь автоповестить Spring bean в JSF bean. Вот пример моего ApplicationContext:Autowiring Map из Spring applicationContext в JSF bean
<context:component-scan base-package="com.ticketfront" />
<util:map id="map" >
<entry key="rp">
<util:map>
<entry key="9003" value="RegP"/>
</util:map>
</entry>
</util:map>
Вот часть моего JSF фасоли:
@Named
@Scope("session")
public class TicketViewBean implements Serializable {
@Autowired
Map<String, Map<String, String>> map;
}
запустить развертывание успешным, но в моем JSF боба карте autowired собственности первая запись нормально, как я настроил в ApplicationContext но есть много других записей, которые помещаются в карту. Например:
map = (java.util.LinkedHashMap) {map={rp={9003=RegP}}, systemEnvironment={USERPROFILE=C:\Users\Administrator, JAVA_HOME=C:\Program Files\Java\jdk1.7.0_40, NB_EXEC_TOMCAT_START_PROCESS_UUID=tomcat70:home=C:\Program Files\Apache Software Foundation\Apache Tomcat 7.0.34:base=apache-tomcat-7.0.34.0_base, SystemDrive=C:, JPDA_TRANSPORT=dt_shmem, CURRENT_DIR=C:\Program Files\Apache Software Foundation\Ap
и многие другие разные вещи, даже WEB-XML ....
Я совершенно запутался, почему это происходит
Вы используете угловой футляр «Карта» - это отдельный случай, так как он даст вам все бобы с именем (как ключом) и значением). Вы в основном запрашиваете все фасонные символы «Карта», что также и то, что вы видите. Первая запись не такая, как вы говорите, но на самом деле это ваша карта с элементами, а не с одним элементом 'rp'. –