小编Aci*_*ier的帖子

Sencha Touch还是jQuery Mobile?

我想知道我是否要开发移动网络应用程序(现在,两周或一个月内),我应该选择哪一个?移动Web开发人员会选择哪一个?

如果jQM 1.0今天正式发布,我很可能会接受它(只要它实际上实现了它所承诺的).既然它是alpha版本,我想知道是否值得进入商业级项目?Sencha Touch会更好吗?

web-applications mobile-website sencha-touch jquery-mobile

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

Java Mail到Exchange Server"不支持登录方法"

我正在尝试实现Java Mail servlet,第一步是连接到IMAP服务器.

我能够通过端口143(默认IMAP端口)telnet到服务器,telnet说: OK The Microsoft Exchange IMAP4 service is ready.

现在我尝试使用Java Mail API连接到服务器,如下所示:

Properties props = new Properties();
session = Session.getDefaultInstance(props, null);
store = session.getStore("imap");
store.connect("host","user","password");
Run Code Online (Sandbox Code Playgroud)

我能够使用现有的Outlook Webapp连接到同一台服务器,并使用与我在java中传递给它的相同凭据.

但运行此命令session.setDebug(true)会产生以下输出:

DEBUG: setDebug: JavaMail version 1.4.5
DEBUG: getProvider() returning javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc]
DEBUG: mail.imap.fetchsize: 16384
DEBUG: mail.imap.statuscachetimeout: 1000
DEBUG: mail.imap.appendbuffersize: -1
DEBUG: mail.imap.minidletime: 10
DEBUG: trying to connect to host "myHost", port 143, isSSL false
* OK The Microsoft Exchange IMAP4 service is ready.
A0 CAPABILITY
* CAPABILITY …
Run Code Online (Sandbox Code Playgroud)

java imap exchange-server jakarta-mail

24
推荐指数
2
解决办法
3万
查看次数

具有远程过滤器和排序的ExtJS无限滚动网格

在ExtJS 4.1 beta 2中,我设法使用远程存储实现无限滚动网格.我基本上采用了一个现有的(完全可操作的)分页网格(带有远程存储,过滤和排序),然后输入适当的配置进行无限滚动:

// Use a PagingGridScroller (this is interchangeable with a PagingToolbar)
verticalScrollerType: 'paginggridscroller',
// do not reset the scrollbar when the view refreshs
invalidateScrollerOnRefresh: false,
// infinite scrolling does not support selection
disableSelection: true,   
Run Code Online (Sandbox Code Playgroud)

它没有在文档中的任何地方说明(请参阅无限滚动部分),但您需要将商店设置为具有buffered: true配置.你不能加载store.load()它需要这样做:

store.prefetch({
    start: 0,
    limit: 200,
    callback: function() {
        store.guaranteeRange(0, 99);
    }
});   
Run Code Online (Sandbox Code Playgroud)

尽管如此,如果我慢慢滚动并因此允许数据预取,不使用任何过滤器并且不使用任何排序,一切都很好.

但是,如果我快速滚动或尝试使用过滤器激活无限滚动网格重新加载或在排序时它们全部分开.错误是options is undefined.

我花了几个小时在代码中进行一些跟踪和谷歌搜索,除了得出结论,没有人实现了带有远程过滤器和远程滚动的无限滚动网格,我发现了以下内容:

过滤正在崩溃,因为这种方法在Ext.data.Store无限卷轴需要来自服务器的更多数据时被无限卷轴调用:

mask: function() {
    this.masked = true;   
    this.fireEvent('beforeload');
},
Run Code Online (Sandbox Code Playgroud)

由于某种原因,此方法在没有参数的情况下触发 …

javascript filtering extjs dom-events extjs4

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

尝试在数据库重新启动后重新连接jdbc池数据源

我有一个带有Java后端的Web应用程序,它使用Tomcat jdbc-pool进行数据库连接.这很好用.

但是我在将其导出到其他位置之前尝试万无一失,最近出现了有人重新启动SQL Server数据库服务但没有重新启动Tomcat服务的情况.这导致了一个SQLException:java.sql.SQLException: I/O Error: Connection reset by peer: socket write error直到我重新启动Tomcat,强制jdbc-pool数据源重新连接.

我在Tomcat jdbc-pool文档中寻找某种配置来告诉数据源尝试重新连接但我找不到任何东西.

有没有人知道是否有某种配置,或者我应该在每次请求之前检查这种情况吗?

java tomcat datasource jdbc-pool

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

ExtJS扩展网格RowEditor插件(编辑数组)

我一直在使用ExtJS网格行编辑插件,对于Web应用程序中的CRUD操作非常自由.现在,我需要允许使用此行编辑插件编辑数据库记录以及相关的集合/数组(来自其他数据存储区).

为此,我想在已选择进行编辑的行中插入拖放网格,一个网格显示左侧的可用(未使用)集合项,另一个网格用于保存右侧定义的集合项.

为了说明我想要做的事情,这里是正常的行编辑插件,其中选择了一行进行编辑:

网格与行编辑

我试图这样做(行编辑器div内的拖放网格):

网格与行编辑加上另一个网格

要做到这一点,我一直试图简单地运行类似的东西,Ext.getCmp(???).add(myDnDGridPanel);但我没有找到正确的东西将其附加到(问题中放入什么).

使用此插件编辑相关的集合/数组以及数据库记录似乎是合理的.有没有人知道向这个行编辑器div添加项目的简单方法?

或者......我是否必须破解/扩展插件才能实现此目的?

extjs extjs4

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

理解"布局运行失败"错误记录

我正在做一些图表工作,并在图表上没有创建任何内容时得到单行消息"布局运行失败".展望这个我发现我必须添加一些额外的脚本文件来生成日志文件所涵盖这里:

布局失败

由于4.1中布局引擎的设计,不正确的配置(或错误)可能导致布局运行无法完成所有计算.发生这种情况时,布局只会停止,并且已刷新到DOM的部分结果都是可见的.在某些情况下,布局可能已完成99%,故障可能未被检测到或显示为轻微的视觉异常.在其他情况下,布局可能会提前失败并使UI处于明显破坏的状态(很像布局期间的JS错误会在以前的版本中执行).

诊断

如果您怀疑看到布局失败,则第一步是启用布局诊断.这是通过用"ext-all-dev.js"替换普通的"ext-all.js"文件并添加一些额外的脚本来完成的.

我添加了所需的脚本:

<script type="text/javascript" src="extjs/src/diag/layout/Context.js"></script>
<script type="text/javascript" src="extjs/src/diag/layout/ContextItem.js"></script>
Run Code Online (Sandbox Code Playgroud)

现在我得到了我无法理解的诊断数据 - 它似乎没有诊断出错误:

++printer<autocontainer> - size: configured/shrinkWrap
    --statprint-1472<autocontainer> - size: configured/configured
        triggeredBy: count=1
            statprint-1472.containerChildrenDone:dom () dirty: false, setBy: ?
        --chart-1473<draw> - size: shrinkWrap/shrinkWrap
            triggeredBy: count=1
                chart-1473.containerChildrenDone:dom (true) dirty: false, setBy: ?
    ++panel-1474<dock> - boxParent: printer - size: natural/configured
    ++panel-1474<autocontainer> - boxParent: printer - size: natural/configured
    ++statprint-1472<dock> - size: configured/configured
        ++statprint-1472_header<body> [isBoxParent] - size: calculated/shrinkWrap
        ++statprint-1472_header<hbox> [isBoxParent] - size: calculated/shrinkWrap
            ++statprint-1472_header_hd<autocomponent> [isBoxParent] - size: calculated/shrinkWrap
            ++tool-1475<autocomponent> [isBoxParent] …
Run Code Online (Sandbox Code Playgroud)

debugging logging extjs extjs4 extjs4.1

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

向Ajax请求添加标头

如何向ExtJS ajax请求添加请求标头?

我特意想添加标题:accept-encoding等于true.

extjs extjs4 extjs4.1

12
推荐指数
3
解决办法
2万
查看次数

你如何在MVC模式中包含UX类?

在MVC模式之前,我将简单地通过将其包含在JS的顶部来包含UX类,之后Ext.onReady:

Ext.Loader.setConfig({enabled: true});
Ext.Loader.setPath('Ext.ux', 'extjs/examples/ux');
Ext.require([
    'Ext.ux.grid.FiltersFeature'
]);
Run Code Online (Sandbox Code Playgroud)

现在我正在使用MVC模式,我有一个需要使用相同功能的网格面板.我在视图中包含了一个require语句,如下所示:

Ext.define('ST.view.StudentLog', {
    extend: 'Ext.grid.Panel',
    alias: 'widget.studentlog',
    requires: [
        'Ext.ux.grid.FiltersFeature'
    ],
Run Code Online (Sandbox Code Playgroud)

但该应用程序首次开始加载时会产生404错误.

有任何想法吗?

编辑:

我已经尝试在视图的顶部放置相同的代码块也无济于事(参考Ext.Loader.setConfig / .setPath块).

extjs/src/ux/无论我如何尝试告诉它,加载器都会继续尝试加载UX类.根据这个建议,我也尝试在我的应用程序控制器中定义一个路径属性,但它看起来像回答者在后面看到的那样在4.1 rc3中不存在,因为我找不到它而它没有工作.

如果我只是在带有<script>标记的HTML中将FilterFeature.js添加为导入的源文件,那么当我的应用程序启动时,它的所有依赖项都会出现404错误.

必须有一种简单的方法可以直接从UX文件夹中将UX类包含在应用程序中,以便它可以链接到其他UX依赖项.

extjs gridpanel

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

在线查找点的新坐标

假设我知道两点:x1,y1和x2,y2.我知道我可以很容易地用毕达哥拉斯计算这条线的长度,但如果我想计算一条缩短版本的线怎么办呢.例如,我希望x,y坐标朝向下一个点10个像素.有没有一个简单的公式来找到一个有角度的线上的任何新点?


好的,这是作为JavaScript函数的解决方案.为了解释的目的,我故意将这个额外的冗长.如下面的评论所示,您必须首先找到角度,然后用新的斜边计算边.

三角形边的描述

/**
 *  Calculates length of a line on Cartesian grid, then returns point that is X number of pixels down the line.
 *
 * @param  {Number} fromX - starting x point
 * @param  {Number} fromY - starting y point
 * @param  {Number} toX - ending x point for vector
 * @param  {Number} toY - ending y point for vector
 * @param  {Number} pxDistance - Number of pixels down line toward ending point to return
 * @return {Object} Returns …
Run Code Online (Sandbox Code Playgroud)

javascript geometry trigonometry

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

从组合框中删除键入光标

我正在使用ExtJS组合框.聚焦于组合框时有一个打字光标.我editable: false在创建组合框时尝试实现,但它只对chrome有帮助.

还试过clearListeners()功能,看看这是否适用于该光标 - 没有帮助,它仍然出现在FireFox和IE中.

另一个想法是disabled在组合框中设置输入字段.当我手动完成时,它有所帮助.

但是当我写下一个

Ext.get('bu-encodingcount-combobox').select('input').set({disabled:'disabled'});

它没有帮助 - 不知道,也许表达是错误的.

combobox extjs cursor listener

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