2012-10-31 63 views
2

我试图解析中的Java XML,与下面的代码Documentbuilder.parse返回错误权限被拒绝

File fXmlFile = new File(DAL_DB_ALARM_MOVED_XML); 
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); 
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder(); 
Document doc = dBuilder.parse(fXmlFile); 
doc.getDocumentElement().normalize(); 

上面的代码抛出一个异常Permission Denied,同时解析()被调用。任何人都可以帮助我吗?

回答

0

也许您对文件系统有读取权限问题?
请验证这一点,并打印stracktrace。

+0

这似乎更倾向于像一个评论,而不是答案:) – Sujay

+0

我有充分的权限drwxrwxr-X 11数据库ccmbase 4096年10月31分贝12:13 – Sam

+0

/usr/local/cm/db/moved_cuc_alarm_file.xml(Permission (Unknown Source) org.apache.xerces.parsers.DOMParser.parse(Unknown Source) ) org.apache.xerces.parsers.XMLParser.parse(未知来源) org.apache.xerces.parsers.XML11Configuration.parse(未知来源) org.apache.xerces.parsers.XML11Configuration.parse(未知来源) org.apache.xerces.impl.XMLVersionDe tector.determineDocVersion(Unknown Source) org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source) – Sam

0

尝试此处的建议。

access right to parse an XML in java

请确保您有读取权限,并且不保留文件打开(只是一种尝试)。

+0

我尝试使用InputStream,仍然是相同的错误遇到错误,而XML解析./usr/local/cm/db/moved_cuc_alarm_file.xml(权限被拒绝) java.util.TimerThread.run(Timer.java:462) java。 util.TimerThread.mainLoop(Timer.java:512) com.cisco.unity.srm.dal.DbMonitor $ CheckAlarmsTask.run(DbMonitor.java:228) com.cisco.unity.srm.dal.DbMonitor.access $ 100 (DbMonitor.java:36) com.cisco.unity.srm.dal.DbMonitor.checkAlarms(DbMonitor.java:179) com.cisco.unity.srm.dal.DAL.monitorAlarms(DAL.java:515) java.io.FileInputStream中。 (FileInputStream.java:120) java.io.FileInputStream.open(Native Method) – Sam