Erreur ’injection de ressources dans le bean
Bonjour à tous,
Je débute dans la programmation JSF. Ici j'essaie de récupérer des données d'un fichier xml afin de placer des markers sur une carte.
J'utilise JAXB pour la "gestion" des données dans l'xml.
Lors de la génération de mon code, j'obtiens l'erreur : "Erreur lors de l’injection de ressources dans le bean géré «markersView»"
Je ne sais pas exactement quelle partie du code pourrait être utile à la résolution de mon problème donc je vais mettre mon beanmarkersView et au besoin, n'hésitez pas à me demander d'autres parties de mon code.
markersView :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
| /*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package beanMarker;
import generated.Carto;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import javax.inject.Named;
import javax.enterprise.context.Dependent;
import java.io.Serializable;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import org.primefaces.event.map.OverlaySelectEvent;
import org.primefaces.model.map.DefaultMapModel;
import org.primefaces.model.map.LatLng;
import org.primefaces.model.map.MapModel;
import org.primefaces.model.map.Marker;
/**
*
* @author Jérôme
*/
@Named(value = "MarkersView")
@Dependent
@ManagedBean
@ViewScoped
public class MarkersView implements Serializable {
private MapModel advancedModel;
private Marker marker;
String coordNumber = "coord";
/*public MarkersView() throws JAXBException, FileNotFoundException {
JAXBContext jc= JAXBContext.newInstance(generated.ObjectFactory.class);
Unmarshaller u = jc.createUnmarshaller();
Carto carto
= (Carto) u.unmarshal(new FileInputStream("C:\\Users\\Jérôme\\Documents\\EPSI I4\\WebServices - MARTHOS Lucien\\Applications\\2-TP1\\carto.xml"));
List markers = (List) carto.getMarkers();
for(int i=0; i < markers.size(); i++) {
Marker markerUnique = (Marker) markers.get(i);
}
}*/
@PostConstruct
public void init() {
try {
advancedModel = new DefaultMapModel();
JAXBContext jc = JAXBContext.newInstance(generated.ObjectFactory.class);
Unmarshaller u = jc.createUnmarshaller();
Carto carto = (Carto) u.unmarshal(new FileInputStream("C:\\Users\\Jérôme\\Documents\\EPSI I4\\WebServices - MARTHOS Lucien\\Applications\\2-TP1\\carto.xml"));
List markers = (List) carto.getMarkers().getMarker();
for(int i=0; i < markers.size(); i++) {
coordNumber = coordNumber+i;
System.out.println(coordNumber);
marker = (Marker) markers.get(i);
LatLng coordNumber = new LatLng(marker.getLatlng().getLat(),marker.getLatlng().getLng());
advancedModel.addOverlay(new Marker(coordNumber));
}
//coordonnées
//LatLng coord1 = new LatLng(48.8613, 2.32442);
//LatLng coord2 = new LatLng(48.8371336894515, 2.37434055460561);
//basic marker
//advancedModel.addOverlay(new Marker(coord1, "Port Solferino"));
//advancedModel.addOverlay(new Marker(coord2, "Quai Mauriac / Pont de Bercy"));
} catch (JAXBException ex) {
Logger.getLogger(MarkersView.class.getName()).log(Level.SEVERE, null, ex);
} catch (FileNotFoundException ex) {
Logger.getLogger(MarkersView.class.getName()).log(Level.SEVERE, null, ex);
}
}
public MapModel getAdvancedModel() {
return advancedModel;
}
public void onMarkerSelect(OverlaySelectEvent event) {
marker = (Marker) event.getOverlay();
}
public Marker getMarker() {
return marker;
}
} |
Merci d'avance pour votre aide et vos conseils