public static Object[][] readXML(String path) {
		try {
			DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory
					.newInstance();
			DocumentBuilder documentBuilder = documentBuilderFactory
					.newDocumentBuilder();
			Document doc = documentBuilder.parse(path);
			Element item = null;
			NodeList itemNodeList = doc.getElementsByTagName("item");
			Object[][] data = new Object[itemNodeList.getLength()][5];
			for (int i = 0; i < itemNodeList.getLength(); i++) {
				Node itemNode = itemNodeList.item(i);
				if (itemNode.getNodeType() == Node.ELEMENT_NODE)
					item = (Element) itemNode;
				data[i][0] = Integer.parseInt((item.getElementsByTagName("id")
						.item(0).getTextContent()));
				data[i][1] = ((item.getElementsByTagName("name").item(0)
						.getTextContent()));
				data[i][2] = Integer.parseInt((item.getElementsByTagName(
						"quantity").item(0).getTextContent()));
				data[i][3] = Integer.parseInt((item.getElementsByTagName(
						"price").item(0).getTextContent()));
				if (item.getElementsByTagName("description").item(0)
						.getTextContent().equals("null"))
					data[i][4] = "";
				else
					data[i][4] = ((item.getElementsByTagName("description")
							.item(0).getTextContent()));
			}
			return data;
		} catch (ParserConfigurationException e) {
			
			Main.getFrame().showError("Sorry can't something went wrong with the parser configuration \n"+e.getMessage());
			logger.error("Failed to Parse file");
		} catch (SAXException e) {
			Main.getFrame().showError("Sorry can't parse file \n"+e.getMessage());
		} catch (IOException e) {
			Main.getFrame().showError("Sorry can't open file \n"+e.getMessage());
			logger.error("cant reach requested file: "+path);
		}
		return null;
	}