我正在尝试实现一个自定义截断转换器,它会截断给定索引处的字符串并添加一个连续符号.只有当我对参数进行硬编码时,转换器才能正常工作,因为它们没有传递给后端.我究竟做错了什么?
参数是转换器类的属性:
@FacesConverter(value = TruncateConverter.CONVERTER_ID)
public class TruncateConverter implements Converter, StateHolder
{
public static final String CONVERTER_ID = "bla.blablabla.Truncate";
private int truncateIndex;
private String contSymbol;
Run Code Online (Sandbox Code Playgroud)
这是我如何使用转换器(或尝试):
<h:outputText id="news-text-left" value="#{newsListBean.newsList_teaser.text}">
<f:converter converterId="bla.blablabla.Truncate" truncateIndex="150" contSymbol="..." />
</h:outputText>
Run Code Online (Sandbox Code Playgroud)
我google了很多,并没有找到一个带参数的JSF2转换器的例子......谢谢你们的帮助,真的很感激!
我想用Apache POI在excel文件中设置日期格式的日期.该值将以这样的方式设置,使得在地址栏中它将以mm/dd/YYYY显示,在单元格中将以dd-mmm显示(数字中的日期和字符串中的月份,如01-Jan).在这种情况下你能帮我吗?
所以我们都知道#{someBean.value}会尝试获取someBean被调用的某些属性的内容value.它会寻找getValue().但是,如果这个属性是boolean什么?它会寻找isValue().它不会寻找的是hasValue().
这让我思考,究竟是做什么的?
Java EE 5教程章节 - 统一表达式语言是指PageContext.FindAttribute().PageContext送你去JSPContext.他们都没有真正解释他们遵循的规则来确定他们正在寻找的方法的名称.
找到说方法名称必须以get开头的文档也相当容易.但是,我知道这很isValue()有效.
任何人都可以指向我写下来的文档.我不是在寻找我正在寻找参考的教程或示例.
我遇到了问题,我在JPA中有一个查询.因为我有一些集合,我需要使用左连接提取或内连接提取
我的问题是使用setFirstResult和setMaxResult,以便带回精确数量的结果.每次我看到整个结果都会在使用maxResult后重新启动.
以前有没有办法制作maxResult?
非常感谢 !
这里有更多信息:
我的问题是当我使用它时:
startIndex = 0;
maxResults = 10;
query.setFirstResult(startIndex);
query.setMaxResults(maxResults);
Run Code Online (Sandbox Code Playgroud)
我在日志中看到此消息:
7 juin 2011 09:52:37 org.hibernate.hql.ast.QueryTranslatorImpl list ATTENTION:firstResult/maxResults使用collection fetch指定; 在记忆中应用!
我看到200个结果回来了(在日志中),在HashSet之后我终于得到了10个结果.
它似乎在内存中带回200结果,并在maxResults应用于内存后.
我正在搜索是否有任何方法可以获取并限制结果的数量.
我使用了一种解决方法,我首先询问我的订单的ID,没有任何提取,使用了maxResult.一切都很完美,它使用了极限指令.在我使用带有fetch的"大"查询后,将结果限制在id列表中,然后返回第一个.
这里是我的完整查询,没有我的解决方法(注意@Bozho的谈话没有产生限制):
select o from Order o
left join fetch o.notes note
left join fetch o.orderedBy orderedBy
left join fetch orderedBy.address addressOrdered
left join fetch orderedBy.language orderedByLg
left join fetch orderedByLg.translations orderedByLgTtrad
left join fetch o.deliveredTo deliveredTo
left join fetch deliveredTo.address addressDelivered
left join fetch deliveredTo.language deliveredToLg
left …Run Code Online (Sandbox Code Playgroud) 是否可以调用bean方法并直接从视图传递参数,而不是首先设置bean属性,然后使用commandButton或类似方法调用不带参数的方法?
我有一个项目列表,每个项目都有一个操作列表.为了减少状态,我使用单个曲面remoteCommand代替几个曲面commandButton.从视图中获取动作触发器时,我会调用remoteCommandfrom javascript,但由于它remoteCommand是一个但用于多个项目因此我需要传递项目的id.我想知道是否有办法将项目的id直接作为参数传递给bean方法,而不是先将其设置为bean属性?有没有办法这样做?
实际上,当页面上有很长的项目列表时,我正在寻找一种更好的方法来处理页面上的多个commandButtons.
建议?谢谢.
使用JSF 2.1.6 Mojarra和Primefaces 3.0RC1
我需要在Excel中显示两个小数位(xlsx).我正在使用PHPExcel.在PHP中,我可以使用类似下面的内容来仅显示指定的小数步数.
echo sprintf("%0.2f", $row['price']);
Run Code Online (Sandbox Code Playgroud)
它总是显示两位小数,即使值包含,即如果值没有小数点$row['price']是1500,它会响应1500.00.我需要为excel写相同的值.我试过了
$sheet->setCellValue("A1", sprintf("%0.2f", $row['price']));
Run Code Online (Sandbox Code Playgroud)
但它显示1500而不是显示1500.00(因为Excel自动假定它是一个数值,小数点后的部分,即.00在这种情况下被截断).
我也试过以下
$sheet->getStyle("A1")->getNumberFormat()->setFormatCode('0.00');
Run Code Online (Sandbox Code Playgroud)
但它不足以实现指定的目标.
如何(始终)使用PHPExcel在Excel中显示指定的小数位数?
鉴于以下内容enum.
public enum Constants
{
PAGE_LINKS(10);
//Other constants as and when required.
private final int value;
private Constants(int value){
this.value = value;
}
public int getValue(){
value;
}
}
Run Code Online (Sandbox Code Playgroud)
这enum被置于应用程序范围的bean下,如此,
@ManagedBean
@ApplicationScoped
public final class ConstantsBean
{
private Constants constants;
public ConstantsBean() {}
public Constants getConstants() {
return constants;
}
}
Run Code Online (Sandbox Code Playgroud)
如何访问PAGE_LINKSEL中的值?
<p:dataGrid pageLinks="#{}".../>
Run Code Online (Sandbox Code Playgroud)
应该写#{}什么?可能吗?
编辑:
以下列方式修改bean,
@ManagedBean
@ApplicationScoped
public final class ConstantsBean
{
public ConstantsBean() {}
public int getValue(Constants constants) { …Run Code Online (Sandbox Code Playgroud) 在使用JSF/PrimeFaces执行CRUD操作时,通常需要一种重置托管bean字段/属性的常用方法,基本上在成功完成一个此类操作后调用,以便将支持bean中的字段重置为其初始值(默认值) )价值.
想象代码:
@Named
@ViewScoped
public class Bean extends LazyDataModel<Entity> implements Serializable {
@Inject
private Service service; // EJB.
// Holds a list of selected rows in a <p:dataTable>.
private List<Entity> selectedValues; // Getter & setter.
private String someField; // Getter & setter.
// Other fields depending upon the business requirement.
public Bean() {}
@PostConstruct
private void init() {
// Do something.
}
@Override
public List<Entity> load(int first, int pageSize, List<SortMeta> multiSortMeta, Map<String, Object> filters) {
setRowCount(service.rowCount());
// Other complex …Run Code Online (Sandbox Code Playgroud) 我有一个旧的J2EE应用程序(J2EE 1.3),它打包到EAR中,在EAR中,有WAR和EJB JAR.现在其中一个EJB JAR需要引用一些第三方库JAR,那么打包这些JAR的最佳位置是什么?
如果我有@ManagedBean这个@SessionScoped,为什么我会使用@StatefulEJB?我之前用过购物车并保持会话状态,但由于托管bean将在用户会话期间保存,我可以在那里存储状态,然后调用SLSB以获取业务逻辑.那是对的吗?如果是,那么有状态的ejbs将留给更具体的应用程序,例如何时需要交易等?