我的java代码出现了一些错误。
我有以下代码:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui"
xmlns:pe="http://primefaces.org/ui/extensions"
xmlns:s="http://www.sensap.eu/jsf"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:dialogs="http://java.sun.com/jsf/composite/components/dialogs"
xmlns:widgets="http://java.sun.com/jsf/composite/components/widgets">
当我编译代码时,它给出了以下错误:
找不到名称空间http://java.sun.com/jsf/composite/components/dialogs的库 找不到名称空间http://java.sun.com/jsf/composite/components/widgets
的库我试图检查pom.xml是否正常但是从我的结果看起来很好。我不知道接下来要做什么!!!
答案 0 :(得分:3)
那些http://java.sun.com/jsf/composite/*
名称空间不引用外部库。所以你的Maven配置实际上是无关紧要的。这些http://java.sun.com/jsf/composite/*
命名空间引用了所谓的composite components,它们实际上是您自己的webapp的/resources
文件夹中的XHTML文件,后者又使用<cc:interface><cc:implementation>
声明。
考虑到命名空间,你应该有类似的东西:
Web Pages
|-- resources
| |-- components
| | |-- dialogs
| | | |-- somedialog.xhtml
| | | `-- otherdialog.xhtml
| | `-- widgets
| | |-- somewidget.xhtml
| | `-- otherwidget.xhtml
: :
如果你真的拥有它们并且你的webapp与这些复合物正确运行,那么只有Netbeans本身不够聪明才能看到它们并给出错误的错误。升级Netbeans和/或将问题报告给Netbeans的人应该解决它。
答案 1 :(得分:1)
在我看来,这是一个Maven / Netbeans集成问题。 Netbeans应该从您的maven依赖项推断出必要的框架。框架是一种专有的Netbeans机制,它会影响打开的文件的处理方式。在netbeans中打开项目属性,有一个名为“Frameworks”的选项。在你的情况下,我猜,列表可能是空的。尝试添加JavaServer faces框架,如附图所示。
如果您发现添加框架时出现问题,请阅读此链接Netbeans framework issue
答案 2 :(得分:1)
不要忘记在复合组件中迁移命名空间:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:cc="http://xmlns.jcp.org/jsf/composite">
<cc:interface>
</cc:interface>
...