private Document changeDataInConfigurationFile(XMLDocument document) throws XMLException{
		
		// initialization
		Document xmlDocument = initializeDOMDocument(true);
				
		// change data in configuration file (Breadth-first Search algorithm)		
		Queue<QueueTuple> queue = new LinkedList<QueueTuple>();
		queue.offer(new QueueTuple(null, document.getJbossesb()));
		while (!queue.isEmpty()) {
			
			XMLElement currentElement = queue.peek().getParent();
			Node parent = queue.poll().getNode();
			
			// set element's name
			String[] currentElementAddress = currentElement.getAddress().split("/");
			Element element = xmlDocument.createElement(currentElementAddress[currentElementAddress.length - 1]);
			
			// set attributes
			for (XMLAttribute attr : currentElement.getAttributes()) {
				element.setAttribute(attr.getXmlName(), attr.getValue());
			}
			
			// link each other
			if (parent == null) {
				xmlDocument.appendChild(element);
			} else {
				parent.appendChild(element);
			}
					
			// enqueue child nodes
			for (XMLElement temp : currentElement.getChildren()) {
				queue.offer(new QueueTuple(element, temp));
			}
		}
		
		log.info("Actualization of configuration file ... OK");
		
		return xmlDocument;
	}