我尝试在带有Ruby 1.8.6,Rails 2.2.2,gem 1.3和sqlite-3.5.9的Fedora 9 Linux机器上安装SQLite gem.这是我正在运行的命令及其结果:
sudo gem install sqlite3-ruby
Building native extensions. This could take a while...
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
/usr/bin/ruby extconf.rb install sqlite3-ruby
can't find header files for ruby.
Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.4 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.4/ext/sqlite3_api/gem_make.out
Run Code Online (Sandbox Code Playgroud)
gem_make.out只重复已发送到控制台的内容.我该如何安装这个宝石?
在我的JSF/Facelets应用程序中,这是我表单的一部分的简化版本:
<h:form id="myform">
<h:inputSecret value="#{createNewPassword.newPassword1}" id="newPassword1" />
<h:message class="error" for="newPassword1" />
<h:inputSecret value="#{createNewPassword.newPassword2}" id="newPassword2" />
<h:message class="error" for="newPassword2" />
<h:commandButton value="Continue" action="#{createNewPassword.continueButton}" />
</h:form>
Run Code Online (Sandbox Code Playgroud)
我希望能够根据continueButton()方法中发生的事情为特定的h:message标记分配错误.需要为newPassword和newPassword2显示不同的错误.验证器不会真正起作用,因为将传递结果的方法(来自DB)在continueButton()方法中运行,并且运行两次太昂贵.
我无法使用h:messages标记,因为该页面有多个地方需要显示不同的错误消息.当我尝试这个时,页面显示每条消息的重复.
我试过这个是最好的猜测,但没有运气:
public Navigation continueButton() {
...
expensiveMethod();
if(...) {
FacesContext.getCurrentInstance().addMessage("newPassword", new FacesMessage("Error: Your password is NOT strong enough."));
}
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么?任何帮助,将不胜感激!
这是我当前的SQL语句:
SEARCH_ALBUMS_SQL = "SELECT * FROM albums WHERE title LIKE ? OR artist LIKE ?;";
Run Code Online (Sandbox Code Playgroud)
它会返回与专辑或艺术家名称的完全匹配,但不会返回任何其他内容.我不能在声明中使用'%',否则我会收到错误.
如何将通配符添加到预准备语句中?
(我正在使用Java5和MySQL)
谢谢!
这是我们的第一个JSF应用程序,我正在将我们的图形设计器的CSS集成到我们的facelets文件中.他告诉我他需要输入标签的name和id属性与label标签的for属性相同.
他的要求:
<label for="username">User Name:</label>
<input id="username" type="text" name="username" />
Run Code Online (Sandbox Code Playgroud)
但是,当JSF代码呈现HTML时,我会在这些属性中获得额外的标识符.
我的facelet代码:
<label for="username">User Name:</label>
<h:inputText value="#{login.username}" id="username" name="username" />
Run Code Online (Sandbox Code Playgroud)
发送到浏览器的最终XHTML:
<label for="username">User Name:</label>
<input id="j_id2:username" type="text" name="j_id2:username" />
Run Code Online (Sandbox Code Playgroud)
从JSF的角度来看,这对我来说很有意义,但有没有办法让我满足我们的平面设计师的要求并让每个人都开心?或者这是一个糟糕的JSF监督?
谢谢!