我有一个Java应用程序,在Windows 7上需要以不同的方式运行.
您如何检查哪个Windows版本?检查操作系统版本6.1是否足够?
我刚从我的一个用户那里收到此错误消息.(IE8,Java 1.6.20).它来自applet,它接收来自Javascript的指令并在客户端上执行某些进程.
RangeError
java.lang.RuntimeException: ERROR: Failed to recover corrupt cache entry
at com.sun.deploy.cache.CacheEntry.recover
at com.sun.deploy.cache.CacheEntry.getSignerMap
at com.sun.deploy.cache.CachedJarFile.getSignerMap
at com.sun.deploy.cache.CachedJarFile.access$100
....
Run Code Online (Sandbox Code Playgroud)
什么可能导致这个问题?
我希望有人可以帮我解决这个问题.我一直在绞尽脑汁,我的项目很快到期.先感谢您.
插入新记录时,我收到超出范围异常的索引.在无休止地搜索信息后,有人建议我的映射中的列值与我的持久化类中的列值不匹配.但是,我计算并重新计算,它们似乎匹配.正如您在下面的代码中所看到的,我正在使用NHibernate.Mapping.Attributes来进行映射.也许我在那里做错了什么.
我终于下载了NHibernate源代码并通过我的问题进行了调试.下面是NHibernate试图构建的insert语句:
{插入WTSLIB33T.PRODDATA(PSTAT,PCONO,PDVNO,PWKTY,PCRTY,PTSID,PCNNO,PDTTK,PJBNO,PSJNO,PTKNO,PCWNO,PWKAR,PWKDC,PWKCD,PCNWO,PWDNO,PDESC,PDCCD,PHRS,PUNIT,PSEQ ,PCUST)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? )}
如您所见,参数数量与列表中的字段数相匹配.我还将这个生成的插入与我的类相匹配,我发现PSEQ和PCUST列与我的持久类无关.然后,在通过Dehydrate函数进行调试时,我发现了两个可能的问题.第一个是我注意到对NullSafeSet函数的调用将参数0设置为我的PSEQ字段应该设置为什么,但insert语句中的参数0是PSTAT.
我注意到的第二个问题是最后一次调用"index + = ArrayHelper.CountTrue(includeColumns [i]);" 在Dehydrate函数中,将索引变量保留为23,这是正确的; 但是,下一个调用"IdentifierType.NullSafeSet(statement,id,index,session);" ,它检查行id,传入索引23,这将超出范围.对于基于零的数组,该值应为22.
protected int Dehydrate(object id, object[] fields, object rowId, bool[] includeProperty, bool[][] includeColumns, int table, IDbCommand statement, ISessionImplementor session, int index)
{
if (log.IsDebugEnabled)
{
log.Debug("Dehydrating entity: " + MessageHelper.InfoString(this, id, Factory));
}
// there's a pretty strong coupling between the order of the SQL parameter
// construction and the actual order of the parameter collection.
for (int i = 0; i < entityMetamodel.PropertySpan; i++)
{ …
Run Code Online (Sandbox Code Playgroud) 我有很多项目可以构成一个解决方案.其中一些子项目包含第三方DLL,它们必须进入解决方案的输出文件夹.所有引用的DLL都将 LocalCopy
属性设置为,true
并且大多数DLL实际上都复制到输出.
但是我很难从2个单独的项目中复制到输出中获取3个DLL.我已经尝试设置的把戏LocalCopy
来false
,然后true
但没有成功.我尝试删除和恢复引用 - 也没有成功.
我还可以做些什么?是什么造成的?
我试图在Java中创建2D数组,如下所示:
int[][] adjecancy = new int[96295][96295];
Run Code Online (Sandbox Code Playgroud)
但它失败了,出现以下错误:
JVMDUMP039I Processing dump event "systhrow", detail "java/lang/OutOfMemoryError" at 2017/04/07 11:58:55 - please wait.
JVMDUMP032I JVM requested System dump using 'C:\eclipse\workspaces\TryJavaProj\core.20170407.115855.7840.0001.dmp' in response to an event
JVMDUMP010I System dump written to C:\eclipse\workspaces\TryJavaProj\core.20170407.115855.7840.0001.dmp
JVMDUMP032I JVM requested Heap dump using 'C:\eclipse\workspaces\TryJavaProj\heapdump.20170407.115855.7840.0002.phd' in response to an event
JVMDUMP010I Heap dump written to C:\eclipse\workspaces\TryJavaProj\heapdump.20170407.115855.7840.0002.phd
Run Code Online (Sandbox Code Playgroud)
解决这个问题的方法是增加JVM内存,但我正在尝试提交在线编码挑战的代码.它也失败了,我将无法改变那里的设置.
是否有任何标准限制或指导用于创建不应超过的大型阵列?
有没有人有使用Visual Studio 2008开发Sharepoint 2003的经验?
由于Vista问题,我需要升级到VS2008,但需要支持Sharepoint 2003 webparts.webparts都非常简单.我是否能够使用VS2008支持这些Web部件?
XML:
<root>
<item>
<href>http://myurl</href>
</item>
<item>
<href>http://myurl2</href>
</item>
</root>
Run Code Online (Sandbox Code Playgroud)
XML数据存储在数据库表中.
我可以构建一个Linq查询来选择行,提取XML然后,例如,提取所有的href标签吗?最终结果将是所有选定行的所有URL的列表.
这是我的尝试,但它没有给我我想要的东西 - 这将是所有选定用户的所有href的列表.我只是得到一个空的IEnumerations列表.
var all = from bm in MYTABLE
select new { name=bm.SPP_USER_ID, xml=(string) bm.SPP_BOOKMARKS_XML};
var docs = from x in all
select XDocument.Parse(x.xml);
var href = from h in docs
select h.Descendants("href");
Run Code Online (Sandbox Code Playgroud)
有2个问题.
- 我想只有在实际需要结果时才会执行查询.随着我从SQL进展到XML查询,生成的查询变成了SQL和XML的混合,因此是不可执行的.我的解决方案是通过将SQL查询转换为结果列表来强制执行结果.这将linq-sql与linq-xml分开.
var docs = from x in all
select XDocument.Parse(x.xml);
var docs2 = docs.ToList(); // force result
Run Code Online (Sandbox Code Playgroud)
- 第二个问题是我忘了将命名空间添加到我的XML查询中.一旦我这样做,我得到了所需的结果
XNamespace ns = "http://acme/bookmarks";
var href = from h in docs2 …
Run Code Online (Sandbox Code Playgroud) 我有一个应用程序,其中包含许多连接到许多不同I/O设备的插件(MEF).这些插件中的大多数都有许多托管和非托管dll.
一家制造商最近发布了新固件和新驱动程序.API保持不变.
我认为我可以将dll版本包含在单独的资源文件夹中,并在应用程序启动时将所需的集复制到输出文件夹中.
(我想我可以制作插件的第二个副本并找出加载正确插件的方法,但我认为复制DLL可能会更容易 - 特别是考虑到插件代码没有改变)
这不起作用.
static MyClass() // static constructor
{
// required version?
if (envvar.Equals("4") )
{
path = "ver4.1.1";
}
else
{
path = "ver2.5.1";
}
// location of drivers
path = Path.Combine("./Prj/QX", path);
string[] files = Directory.GetFiles(path);
// Copy the files and overwrite destination files if they already exist.
foreach (string s in files)
{
string fileName = Path.GetFileName(s);
string destFile = Path.Combine(".", fileName);
File.Copy(s, destFile, true);
}
// force load of assemby …
Run Code Online (Sandbox Code Playgroud) 我正在开发一个基于Liferay的门户网站,其中包含许多动态portlet.
Chrome上的加载时间大约是IE的一半.可能有很多因素,但在我看来,IE中的AJAX调用需要的时间比Chrome中的长得多.下面的时间显示了相同请求的(XHR过滤)结果.同一用户已登录并刷新页面.
可能是什么导致了这种差异?
更新 刚刚发现这个问题类似:XmlHttpRequest可以在IE中花费更多时间吗?.一个答案表明了Windows身份验证的链接.但是,所有请求都是GET,我没有看到任何身份验证挑战 - 只需要一个请求和一个-late-回复.
我正在编写一个应用程序,它执行一些测试并生成许多不同的报告.这些可以是标签,最终客户的PDF,维修部门的PDF,XML文件等的任意组合.
根据报告类型,我需要将文件发送到文件系统或许多不同的打印机之一(A4,标签等).理想情况下,应该没有弹出窗口 - 只是直接用纸.
如何将文件(PDF,XML)发送到打印机?我曾经想过,对于XML/Text,我可以将File.Copy转换为LPTn,但这似乎不起作用.对于PDF我猜我可以用一些导致PDF打印的参数调用Acrobat.
我使用的打印机映射到LPTn.有没有更好的方法来执行此操作并将定义存储在应用程序中?即标签转到MyLabelPrinter,A4 PDF转到MyA4Printer.
有没有人这样做过?
c# ×3
java ×3
.net ×2
dll ×2
ajax ×1
applet ×1
arrays ×1
build ×1
caching ×1
exception ×1
liferay-6 ×1
limits ×1
linq-to-sql ×1
linq-to-xml ×1
nhibernate ×1
pdf ×1
performance ×1
platform ×1
printing ×1
sharepoint ×1
windows-7 ×1