小编msh*_*rma的帖子

JQuery清除输入文本字段

我有一个关于在单击同一页面上的不同下拉列表时清除输入文本字段的问题,应清除输入文本字段中的值.这是我的jQuery ftn.每次从下拉列表中选择一个选项时都会显示警告消息但该字段未被清除.知道正确的语法应该是什么:

jQuery(document).ready(function(){

        jQuery("[id$='serialNumForm:noSerialNumProductKey']").change(function () {
            alert("In jquery change ftn!!");
            jQuery("[id$='serialNumForm:inputSN']").value="";
        });     
    });
Run Code Online (Sandbox Code Playgroud)

我有一个表单ID,所以我需要将Id添加到元素ID名称.警报显示正常,值不会改变.

syntax jquery

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

Java多态性混乱

下面的问题来自Kathy Sierra和Bert Bates的Java SCJP5一书.给定一个声明为的方法:

public static <E extends Number> List<E> process(List<E> nums)
Run Code Online (Sandbox Code Playgroud)

程序员想要使用这样的方法:

// INSERT DECLARATIONS HERE
output = process(input);
Run Code Online (Sandbox Code Playgroud)

可以在// INSERT DECLARATIONS这里放置哪一对声明以允许代码编译?(选择所有适用的选项.)

一个.

ArrayList<Integer> input = null;
ArrayList<Integer> output = null;
Run Code Online (Sandbox Code Playgroud)

B.

ArrayList<Integer> input = null;
List<Integer> output = null;
Run Code Online (Sandbox Code Playgroud)

C.

ArrayList<Integer> input = null;
List<Number> output = null;
Run Code Online (Sandbox Code Playgroud)

D.

List<Number> input = null;
ArrayList<Integer> output = null;
Run Code Online (Sandbox Code Playgroud)

E.

List<Number> input = null;
List<Number> output = null;
Run Code Online (Sandbox Code Playgroud)

F.

List<Integer> input = null;
List<Integer> output = null;
Run Code Online (Sandbox Code Playgroud)

G.以上都不是.

给出的正确答案是:B,E,F和书中的解释说明:
"返回类型肯定被声明为List,而不是ArrayList所以A,D是错误的......." …

java polymorphism types

8
推荐指数
2
解决办法
1297
查看次数

JSF修剪白色空间

HI,

我有一个输入字段,我想在其中修剪任何前导/尾随空格.我们使用JSF并使用以下命令将输入​​字段绑定到jsp中的支持bean:

<h:inputText id="inputSN" value="#{regBean.inputSN}" maxlength="10"/>
Run Code Online (Sandbox Code Playgroud)

我的问题是,除了验证可以在jsp中完成吗?我知道我们也可以使用Handler中的trim()java函数来做到这一点,但只是想知道在JSF中是否有更优雅的方法来实现它.

谢谢.

jsf whitespace trim

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

JSF添加查询参数

我正在使用JSF,我有一个支持bean方法,它执行一些处理并设置一个变量'outcome',然后根据faces-config.xml导航规则决定导航到的下一页.

我想要做的是在导航下一页时将参数添加到URL(在支持bean中?).但是在支持bean方法的Handler中,没有对HttpRequest对象的引用.这是一个已经存在了很长时间的现有处理程序,所以我想知道我该怎么做

request.setAttribute("name", value);
Run Code Online (Sandbox Code Playgroud)

JSF有不同的方法吗?任何帮助非常感谢.


HI BalusC,

我正在尝试实现您在下面解释的内容,但是我遇到了问题.这就是我所拥有的:

StringBuffer url = ( (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest()).getRequestURL();
    url.append( "?serialNumber=");
    url.append(regBean.getSerialNumber());
try{                     FacesContext.getCurrentInstance().getExternalContext().redirect(url.toString());
}catch (Exception ex){
    ex.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

没有生成异常,但是我收到500 Http错误"服务器遇到了未知错误." 日志显示了更多细节但不足以提供帮助:

ERROR [生命周期] JSF1054 :(阶段ID:INVOKE_APPLICATION 5,视图ID:/registration/productValidation.jsp)阶段执行期间抛出异常:javax.faces.event.PhaseEvent [source = com.sun.faces.lifecycle.LifecycleImpl@591dae ] 11:19:12,186 ERROR [[Faces Servlet]] servlet Faces Servlet的Servlet.service()在com的org.apache.catalina.connector.ResponseFacade.sendRedirect(ResponseFacade.java:435)抛出异常java.lang.IllegalStateException .sun.faces.context.ExternalContextImpl.redirect(ExternalContextImpl.java:421)at com.sun.faces.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:181)at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl .java:130)at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents上的org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:321)中的javax.faces.component.UICommand.broadcast(UICommand.java:387) AjaxViewRoot.java:296)org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRo)ot.java:253)org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:466)at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)at com.sun.faces.lifecycle .Phase.doPhase(Phase.java:100)

任何想法都将非常感激.谢谢!


好的,谢谢你的评论,我改变了一些东西,现在我有:

FacesContext.getCurrentInstance().getExternalContext().redirect("mypage.jsp?serialNumber=555555");
Run Code Online (Sandbox Code Playgroud)

在调试时,我可以看到重定向正在工作,因为在mypage.htm上我正在显示来自resourcebundle(属性文件)的一些头文件,所以当它试图获得要显示的头时,它在下面的行上遇到NullPointer:

FacesContext context = FacesContext.getCurrentInstance();
Run Code Online (Sandbox Code Playgroud)

context为null,因此日志显示NullPointer错误,但页面的url是正确的我可以看到地址栏显示 http://..../mypage.jsp?serialNum = 5555 正如预期的那样!它似乎只是显示页面的内容有困难.到目前为止如此接近;-(

jsf query-parameters

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

Google协议缓冲区和servlet

我想知道如何使用谷歌协议缓冲区接受请求并将响应发送回客户端?我正在考虑编写一个将接受请求的servlet.以下思路是实现此目的的正确方法:1.有一个.proto文件,它是传入请求的消息定义.2.编写一个接受此请求的servlet,执行各种任务,如查询数据库,然后发送响应.此响应是否需要单独的.proto消息定义以及构成响应的所有字段?3.客户端是否只调用我的servlet的doGet()方法并传递请求,然后应该将响应作为protobuff对象返回?

任何建议或想法将非常感谢.

java servlets protocol-buffers

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