小编Tha*_*han的帖子

如何在Facelets页面中访问会话属性

我已经使用JSF和PrimeFaces实现了一个登录表单.我在PrimeFaces展示网站上使用了这个例子.

我有一个Facelets页面来显示dataTable.现在我需要将上面的登录表单与此表页面集成.所以我在LoginBean.java中添加了几行来处理会话属性.

     if (username.equals(getUsername_db()) && password.equals(getPassword_db())) {//valid user and paward
        loggedIn = true;
        msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Welcome", getUsername_db());
        //new lines
        FacesContext context2 = FacesContext.getCurrentInstance();
        HttpSession session = (HttpSession) context2.getExternalContext().getSession(true);
        session.setAttribute("user", username);
        //end of new lines
        ...
Run Code Online (Sandbox Code Playgroud)

我需要隐藏在数据表中的列,如果用户没有登录.现在我的问题是,我如何才能访问里面我的Facelets页面会话属性?

java session jsf login facelets

7
推荐指数
1
解决办法
3万
查看次数

如何在Jsoup中检查元素的可见性?

我找不到像isDisplayed()Jsoup Element 这样的直接方法。我可以type = "hidden"使用以下代码检查输入。

"HIDDEN".equals(elm.attr("type").toUpperCase())
Run Code Online (Sandbox Code Playgroud)

但我也需要隐藏隐藏的CSS。以及继承的隐藏元素。

java jsoup

5
推荐指数
1
解决办法
1328
查看次数

如果没有匹配的记录,MySql 查询以获取带有 NULL 的两列的所有组合

我有一个表,其中包含服务器停机时间的记录。
我在 sqlfiddle 创建了这个表的简化版本。请看这里的sqlfiddle
表中的每条记录都像

Reason  Month   Down_Time
A       May     2
A       May     5
B       May     5
C       July    15
A       July    3
B       June    6
A       June    8
C       June    2
Run Code Online (Sandbox Code Playgroud)

如果没有匹配的记录,我需要编写一个查询来获取给月份和原因的所有组合为 NULL
举个例子:如果我需要得到系统在 5 月、6 月和 7 月由于原因 A、B 的停机时间或 D.. 我期待的是..

Reason  Month   DOWNTIME
A       May     7
A       June    8
A       July    3
B       May     5
B       June    6
B       July    NULL
D       May     NULL
D       June    NULL
D       July    NULL
Run Code Online (Sandbox Code Playgroud)

由于我们在给定月份的记录中没有 D,它应该是 NULL
这是我的查询:

 SELECT …
Run Code Online (Sandbox Code Playgroud)

mysql null combinations

4
推荐指数
1
解决办法
1716
查看次数

Selenium WebDriver在切换之前获取当前帧

通过切换某个iFrame,我有一个自定义操作来查找元素.它使用以下本机操作: driver.switchTo().frame(requested_frame) 目前我在切换到确切的iframe之前每次切换回默认内容.

现在我需要通过以下scnario来提高它的性能:

  • 检查当前内容/框架
  • 如果requested_frame=currentFrame那么不需要切换
  • 如果requested_frame=null然后切换到默认值(如果currentFrame=default那么再次无需切换)
  • 如果requested_frame!=null && requested_frame!=currentFrame然后切换到默认值,并切换到requested_frame帧.

所以我现在需要的是获得当前帧.有什么方法可以得到它吗?

java selenium selenium-webdriver

4
推荐指数
2
解决办法
1万
查看次数

如何在Java中访问runnable对象中的变量

我将模拟交通灯系统.我创建了Road类,它扩展了JFrame并实现了Runnable.

在run()方法中,我添加了逻辑来增加每辆车的Y位置,现在它正在模拟汽车的运动.但是现在我需要在移动汽车之前检查交通信号灯的状态.

这是我的TrafficLight类,

import java.util.Random;

public class TrafficLight implements Runnable {

volatile boolean stop;

public TrafficLight(boolean stop) {
    this.stop = stop;
}

@Override
public void run() {
    Random randomGenerator = new Random();
    while (true) {
        if (stop) {
            stop = false; //change current status
        } else {
            stop = true;  //change current status
        }
        try {
            Thread.sleep(2000 + randomGenerator.nextInt(2000));
        } catch (Exception ex) {
            System.out.println("error");
        }
       }
   }
}
Run Code Online (Sandbox Code Playgroud)

有没有办法从我的Road Class 检查这个volatile变量stop.

如果没有,请建议我做另一个解决方案.

谢谢.

java multithreading volatile runnable

3
推荐指数
1
解决办法
8217
查看次数

在Eclipse插件中获取当前项目的通用方法

我正在创建一个eclipse插件,该插件应处理Project Explorer中所有打开的项目。它将在所选项目中创建一个文件。

我正在使用波纹管逻辑来获取当前项目。

public IProject getCurrentProject() {
    IProject project = null;
    IWorkbenchWindow window = PlatformUI.getWorkbench()
            .getActiveWorkbenchWindow();
    if (window != null) {
        ISelection iselection = window.getSelectionService().getSelection();
        IStructuredSelection selection = (IStructuredSelection) iselection;
        if (selection == null) {
            return null;
        }

        Object firstElement = selection.getFirstElement();
        if (firstElement instanceof IResource) {
            project = ((IResource) firstElement).getProject();
        } else if (firstElement instanceof PackageFragmentRoot) {
            IJavaProject jProject = ((PackageFragmentRoot) firstElement)
                    .getJavaProject();
            project = jProject.getProject();
        } else if (firstElement instanceof IJavaElement) {
            IJavaProject jProject = ((IJavaElement) firstElement)
                    .getJavaProject(); …
Run Code Online (Sandbox Code Playgroud)

java eclipse-plugin

2
推荐指数
1
解决办法
1683
查看次数

没有Chrome应用中的保存对话框保存文件

在我的Chrome应用程序中,我正在将一些数据写入文件.我在Storage API下的官方网站上使用了以下代码

chrome.fileSystem.chooseEntry({type: 'saveFile'}, function(writableFileEntry) {
writableFileEntry.createWriter(function(writer) {
  writer.onerror = errorHandler;
  writer.onwriteend = function(e) {
    console.log('write complete');
  };
  writer.write(new Blob(['1234567890'], {type: 'text/plain'}));  
}, errorHandler);
});
Run Code Online (Sandbox Code Playgroud)

现在我需要避免弹出保存对话框,并将此文件保存在预定义的位置.

这可能吗?

javascript google-chrome google-chrome-app

1
推荐指数
1
解决办法
1491
查看次数