当前位置: 首页 > 知识库问答 >
问题:

向ArrayList添加的字符串未显示/未更新[重复]

濮阳君浩
2023-03-14

...所以我有了@ApplicationScoped Bean“应用程序”:

    @ManagedBean(name = "Application")
    @ApplicationScoped
    public class Application implements Serializable {

        private boolean isRunning = false;

        private ArrayList<Feed> sentNotifications = new ArrayList<>();

        private ArrayList<String> emails = new ArrayList<>(
                Arrays.asList("f00@b4r.com", "test@test.com")
        );

        private LinkedList<String> words = new LinkedList<>(
                Arrays.asList("vuln","banana","pizza","bonanza")
        );

        private LinkedList<String> feeds = new LinkedList<>(
                Arrays.asList("http://www.kb.cert.org/vulfeed",
                "https://ics-cert.us-cert.gov/advisories/advisories.xml",
                "https://ics-cert.us-cert.gov/alerts/alerts.xml")
        );

...并想添加一个字符串到ArrayList

public String addEmail(String email) {
        emails.add(email);
        return null;
}

Facelet如下所示:

 <!-- EMAILS -->
    <h3>Configured Emails</h3>
    <h:form>
        <h:inputText value="Email" var="email"/>
        <h:commandButton value="Add Email" action="#{Application.addEmail(email)}"/>
    </h:form>
    <h:form>
        <ui:repeat var="email" value="#{Application.emails}">
            <tr>
                <td>#{email}</td>

                <td>
                    <f:facet name="header">Action</f:facet>
                    <h:commandLink value="Delete" action="#{Application.rmEmail(email)}"/>
                </td>
            </tr>
            <br></br>
        </ui:repeat>
    </h:form>

...所以当我尝试添加“blabla@bla.com“,这是结果:

  • 有一个删除按钮显示,但不是字符串本身

请帮忙!谢谢

共有1个答案

微生昌勋
2023-03-14

我终于修好了!

感谢用户@Kukeltje,他暗示我犯了一些基本的错误——以及用户@Wietlol,他通过道德支持和“相信我”在聊天中激励了我:)

解决方案:

…在应用中。爪哇:

public List<Feed> sentNotifications = new ArrayList<>();

public List<String> emails = new ArrayList<>();

public List<String> words = new LinkedList<>(Arrays.asList("vuln", "banana", "pizza", "bonanza"));

public List<String> feeds = new LinkedList<>(
        Arrays.asList("http://www.kb.cert.org/vulfeed",
                "https://ics-cert.us-cert.gov/advisories/advisories.xml",
                "https://ics-cert.us-cert.gov/alerts/alerts.xml")
);

private String currentEmail;
private String currentFeed;
private String currentWord;

[...]

 public void addEmail() {
        emails.add(currentEmail);
 }

…和gui。XHTML:

 <!-- EMAILS -->
    <h3>Configured Emails</h3>
    <h:form>
        <h:inputText value="#{Application.currentEmail}" var="email"/>
        <h:commandButton value="Add Email" action="#{Application.addEmail}"/>
    </h:form>
    <h:form>
        <ui:repeat var="email" value="#{Application.emails}">
            <tr>
                <td>#{email}</td>

                <td>
                    <f:facet name="header">Action</f:facet>
                    <h:commandLink value="Delete" action="#{Application.rmEmail(email)}"/>
                </td>
            </tr>
            <br></br>
        </ui:repeat>
    </h:form>

请注意action=“#{Application.addEmail}”如何不使用参数,而是通过value=“#{Application.currentmail}”将参数传递给方法。

如果你,读者,有同样的问题,请考虑以下几点:

  • bean中每个字段的getter/setter

希望这个答案对有同样问题的ppl有用!

你好,格乌尔

 类似资料:
  • 假设我在一个数组列表中添加了2个用户Apple和Orange。然后我想将牛顿添加到苹果的朋友列表中。所以苹果应该有1个朋友,而橙色仍然没有任何朋友,因为我还没有添加他们。 我的问题是,当我把牛顿添加到苹果的朋友中时,牛顿也会出现在orange的朋友中。我只需要一个朋友出现在苹果和橙色没有。 我认为这是我为用户的朋友设置arraylist的方式,但我不确定如何更改它。

  • 我有代码在这里生成一个随机的名字给定音节点击一个动作按钮。但作为字符串currentName生成的名称会显示在TextView中。我需要使视图成为它自己的类吗?我是androidstudio的新手,来自eclipse,所以textviews对我来说也是新手。多谢了。 } 这也是我的activity_main.xml

  • 应用程序应该做的是从editReminder中获取一个字符串,并使用intent将其发送到AlarmManager。这是第一次成功。但是,当你关闭应用程序并重试时,通知不会使用你刚刚在编辑文本中键入的字符串,而是使用你第一次运行应用程序时键入的文本。 我们如何使新插入的文本显示在通知中,而不是旧文本? MainActive:在按钮单击上执行的方法 DisplayNotification:在触发通知

  • 我认为每次更改字符串后,Python字符串的id都必须更改。但我发现真正的行为是不同的。例如,并非输出下面的所有代码字符串都不同: 这就是为什么我认为Python内核正在尝试优化代码,并开始对内存中的字符串进行奇怪的操作。该假设的另一个论点是,常量ID与大小为2的幂的段相关联: 但这其中还有一件奇怪的事。让我们看看随着字符串大小的增加,段大小会发生什么变化: 最后,我们可以尝试近似地将char添加

  • 我只是有一个关于在JAVA中添加一些货币($)的问题,我使用NumberFormat.getMONcyInstance();以“$”获取我的输出。我的程序是输入一些钱(字符串格式),例如程序只接受(100美元、50美元、20美元...等等),所以我使用了这段代码: 如何获取输入(100.00、50.00…)以从总价中减去它们。。例如我想要(100.00-12.00)(12.00是总价) 任何帮助都

  • 我正在做一项关于使用结构化/半结构化/非结构化数据的作业,我正在对莎士比亚的戏剧进行字数统计(以了解语言如何随时间变化),方法是导入每部戏剧的txt文件和xml索引文件,该文件存储有关每部戏剧的关键信息,如编写年份、角色列表等。。然后,我将删除字符名、设置、标点符号和常用词(和、但、或,如果等…)从txt文件准备好进行字数统计-全部在C#中运行的控制台脚本中。我正在编写一个类,每个剧本的数据都将存