我已经生成了一个报告(使用JasperReport).我的问题是图表重复,我有一个图表,报告包含22页!问题是什么?
这是我的报告:
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="report2" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<subDataset name="New Dataset 1">
<parameter name="SQL" class="java.lang.String"/>
<parameter name="Titre" class="java.lang.String">
<defaultValueExpression><![CDATA[]]></defaultValueExpression>
</parameter>
<queryString>
<![CDATA[$P!{SQL}]]>
</queryString>
<field name="nb" class="java.lang.Long"/>
<field name="champ1" class="java.lang.String"/>
<field name="champ2" class="java.lang.String"/>
</subDataset>
<parameter name="SQL" class="java.lang.String">
<defaultValueExpression><![CDATA[]]></defaultValueExpression>
</parameter>
<parameter name="Titre" class="java.lang.String"/>
<queryString>
<![CDATA[select id from jiraissue]]>
</queryString>
<field name="id" class="java.math.BigDecimal"/>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="46" splitType="Stretch">
<textField>
<reportElement …Run Code Online (Sandbox Code Playgroud) 我的数据库(MYSQL)中有一个日期时间类型的字段(格式为2011-05-18 16:29:31),我不知道这种类型!因为我必须将String转换为此类型.我找到了java.sql.Date和java.sql.Timestamp而不是datetime!
我正在使用 JSF 2.0 和 PrimeFaces。我有一个 selectOneMenu 和一个 selectManyCheckbox。我想实现这个场景:
当用户选择:
这是我到目前为止的尝试,观点:
<h:selectOneMenu value="#{bean.chartType}">
<f:selectItem itemValue="PieChart" itemLabel="PieChart" />
<f:selectItem itemValue="BarChart" itemLabel="BarChart" />
<p:ajax event="keyup" update="checkbox" listener="#{bean.checkboxHandler}" />
</h:selectOneMenu>
<h:selectManyCheckbox id="checkbox" value="#{bean.selectedItemscheckbox}">
<f:selectItem itemValue="priority" itemLabel="By priority" />
<f:selectItem itemValue="project" itemLabel="By project" />
<f:selectItem itemValue="issuetype" itemLabel="By IssueType" />
<f:selectItem itemValue="group" itemLabel="By group" />
</h:selectManyCheckbox>
Run Code Online (Sandbox Code Playgroud)
(注意:我不确定是否<p:ajax event>正确)
豆:
public void checkboxHandler() {
Iterator it1 = selectedItemscheckbox.iterator();
if (chartType.equals("PieChart")) {
while (it1.hasNext()) {
if (selectedItemscheckbox.size() > 1) {
// Here should be …Run Code Online (Sandbox Code Playgroud) 我有一个ArrayList<String>命名列表,我想将其转换为ArrayList<SelectItem>.我怎样才能做到这一点?
PS:JSF的selectItem
我使用JPA进行映射,我有这个实体类
@Entity
@Table(name = "h_pe")
@XmlRootElement
@NamedQueries({
public class HPe implements Serializable {
private static final long serialVersionUID = 1L;
@EmbeddedId
protected HPePK hPePK;
@Column(name = "PE_TIMEOUT")
private Integer peTimeout;
@Column(name = "PE_STATUS")
private Boolean peStatus;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "hPe")
private Collection<HPesp> hPespCollection;
@JoinColumn(name = "PE_ENV", referencedColumnName = "ENV_URL", insertable = false, updatable = false)
@ManyToOne(optional = false)
private HEnv hEnv;
@JoinColumn(name = "PE_PLATFORM", referencedColumnName = "PLATFORM_NAME", insertable = false, updatable = false)
@ManyToOne(optional = false)
private HPlatform …Run Code Online (Sandbox Code Playgroud) 我想从我的文件中删除一行(特别是第二行),所以我使用了另一个文件进行复制,但使用下面的代码,第二个文件包含完全相同的文本.(我的原始文件.txt和我的最终文件.XML)
public static File fileparse() throws SQLException, FileNotFoundException, IOException {
File f=fillfile();//my original file
dostemp = new DataOutputStream(new FileOutputStream(filetemp));
int lineremove=1;
while (f.length()!=0) {
if (lineremove<2) {
read = in.readLine();
dostemp.writeBytes(read);
lineremove++;
}
if (lineremove==2) {
lineremove++;
}
if (lineremove>2) {
read = in.readLine();
dostemp.writeBytes(read);
}
}
return filetemp;
}
Run Code Online (Sandbox Code Playgroud) 我有一个包含元素的列表,我想删除重复项.我试图这样做,但它没有用.
这是代码:
//list is the original list containing duplicates
Iterator it1=list.iterator();//iterator1
while (it1.hasNext())
{
Iterator it2=list.iterator(); //iterator2
if(it1.next().equals(it2.next()))
{
//liststeps is the list without duplicates
liststeps.add(it1.next());
}
}
System.out.println("multiple list "+list.toString());
System.out.println("list "+liststeps.toString());
Run Code Online (Sandbox Code Playgroud)
结果:
multiple list [Open, In Progress, Waiting Customer Test, Closed, Open, Step11, Step22, Open, In Progress, Waiting Customer Test, Closed]
list [In Progress, Step11, In Progress]
Run Code Online (Sandbox Code Playgroud)