public Playfield readXmlFile(Playfield playf){

		Landscape[][] map=new Landscape[12][8];

		try {
			//File fXmlFile = new File("http://localhost/java/map.xml");


	        //URL oracle = new URL("http://localhost/java/map.xml");
	        InputStream fXmlFile = getClass().getResource("/map.xml").openStream();
			
			DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
			DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
			Document doc = dBuilder.parse(fXmlFile);

			//optional, but recommended
			//read this - http://stackoverflow.com/questions/13786607/normalization-in-dom-parsing-with-java-how-does-it-work
			doc.getDocumentElement().normalize();

			System.out.println("Root element :" + doc.getDocumentElement().getNodeName());

			/*
			 * START LOOKING FOR RESOURCES
			 */
			NodeList nList = doc.getElementsByTagName("Row");			
			System.out.println("Found rows: "+nList.getLength());

			for (int row = 0; row < nList.getLength(); row++) {

				Node nNode = nList.item(row);

				NodeList entryList = ((Element)nNode).getElementsByTagName("Entry");
				System.out.println("Found entries: "+entryList.getLength());

				for (int entry = 0; entry < entryList.getLength(); entry++) {

					Node entryNode = entryList.item(entry);
					System.out.println("\nCurrent Element :" + entryNode.getNodeName());

					if (entryNode.getNodeType() == Node.ELEMENT_NODE) {

						Element e2Element = (Element) entryNode;
						String name=e2Element.getElementsByTagName("Name").item(0).getTextContent();
						String type=e2Element.getElementsByTagName("Type").item(0).getTextContent();
						String value=e2Element.getElementsByTagName("Value").item(0).getTextContent();
						String chip=e2Element.getElementsByTagName("Chip").item(0).getTextContent();

						Resource res = Resource.valueOf(type);
						boolean isChip=Boolean.parseBoolean(chip);
						
						Point indexes=new Point(entry,row);
						
						playf.lands[entry][row]=new Landscape(playf,res,Integer.parseInt(value),indexes,isChip);
					}
				}
			} //End of main for-loop resources

			/*
			 * START LOOKING FOR POSITIONS
			 */
			NodeList cityList = doc.getElementsByTagName("City");			
			System.out.println("Found Cities: "+cityList.getLength());

			for (int row = 0; row < cityList.getLength(); row++) {

				Node cityNode = cityList.item(row);


				
					if (cityNode.getNodeType() == Node.ELEMENT_NODE) {

						Element e2Element = (Element) cityNode;
						String name=e2Element.getElementsByTagName("Name").item(0).getTextContent();
						String posX=e2Element.getElementsByTagName("PosX").item(0).getTextContent();
						String posY=e2Element.getElementsByTagName("PosY").item(0).getTextContent();
						String gold=e2Element.getElementsByTagName("Gold").item(0).getTextContent();
						String starter=e2Element.getElementsByTagName("Start").item(0).getTextContent();

						int intX = Integer.parseInt(posX);
						int intY = Integer.parseInt(posY);
						int intGold = Integer.parseInt(gold);
						boolean start = Boolean.parseBoolean(starter);

						playf.cities[intX][intY]=new City(playf,new Point(intX,intY), intGold,start,name);
					}
				
			} //End of main for-loop resources





		}catch (FileNotFoundException e) {
			e.printStackTrace();
			System.out.println("FileWrite: File not found. Load empty ArrayList");
		} catch (ParserConfigurationException|IOException|SAXException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			System.out.println("FileWrite: Something wrong with the parsing of XML file");
		}
		return playf;
		//return returnList;
	}