我一直在使用Apache服务器和Jackson一起使用和生成JSON文件的web服务.
但是,其中一个服务的方法应该能够从一个移动应用程序保存上传的图像,该应用程序向我的web服务发出多部分/表单数据POST请求,我不知道如何处理我的这种内容类型上下文.我们通常创建"Request"和"Response"对象来使用和生成JSON,但是,我担心这不适用于这种情况.
这是请求格式:
Content-type: multipart/form-data
"Description": text/plain
"Path": text/plain
"Image": image/jpeg
Run Code Online (Sandbox Code Playgroud)
如何正确使用这种请求并保存图像服务器端?
[编辑]
我设法使用以下方法来使用multipart/form-data:
public returnType savePicture(
@Multipart(value = "mode", type = "text/plain") String mode,
@Multipart(value = "type", type = "text/plain") String type,
@Multipart(value = "path", type = "text/plain") String path
@Multipart(value = "image", type = "image/jpeg") Attachment image
)
{
Run Code Online (Sandbox Code Playgroud)
但是,在尝试使用以下POST请求时:
Content-type: multipart/form-data, boundary=AaB03x
--AaB03x
content-disposition: form-data; name="mode"
T
--AaB03x
content-disposition: form-data; name="type"
M
--AaB03x
content-disposition: form-data; name="path"
c:/img/
--AaB03x
content-disposition: form-data; name="image"; filename="image.jpg"
Content-Type: image/jpeg
Content-Transfer-Encoding: binary
imgdata …Run Code Online (Sandbox Code Playgroud) 我一直在尝试为SQL Server 2012数据库配置连接池.我目前已经配置并运行了Informix和Oracle池,只有SQL Server让我头疼.这是我在Context.xml上的资源到目前为止的样子:
<Resource name="jdbc/sqlserv"
auth="Container"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver"
type="javax.sql.DataSource"
maxActive="50"
maxIdle="10"
maxWait="15000"
username="username"
password="password"
url="jdbc:sqlserver://127.0.0.1:1433;databaseName=SQLDB;"
removeAbandoned="true"
removeAbandonedTimeout="30"
logAbandoned="true" />
Run Code Online (Sandbox Code Playgroud)
当然,那是使用sqljdbc4驱动程序.我们已经尝试过使用jtds-1.3.0了driverClass="net.sourceforge.jtds.jdbc.Driver",但是没有去.所有资源引用也正在正确配置.每当我尝试使用该资源创建新连接时,它都会失败.
为了便于比较,以下是我们的Informix和Oracle资源的外观:
<Resource name="jdbc/infmx"
auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
maxActive="50"
maxIdle="10"
maxWait="15000"
username="username"
password="password"
driverClassName="com.informix.jdbc.IfxDriver"
url="jdbc:informix-sqli://localhost:30091/infmx:informixserver=ol_infmx_soc"
removeAbandoned="true"
removeAbandonedTimeout="30"
logAbandoned="true"/>
<Resource name="jdbc/orcl"
auth="Container"
type="oracle.jdbc.pool.OracleDataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
factory="oracle.jdbc.pool.OracleDataSourceFactory"
url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
user="username"
password="password"
maxActive="50"
maxIdle="10"
maxWait="15000" />
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:如何在我的tomcat上下文中为SQL Server 2012正确配置连接池?我搜索了高低,尝试了我发现的一切,但没有任何效果.
提前致谢.
[编辑]这是堆栈跟踪:http://pastebin.com/w3rZSERs
[edit-2]似乎问题是Tomcat无法在他的lib文件夹中找到驱动程序.我们很确定它在那里,但我们不知道这一点.sqljdbc4和jtds-1.3.0都会发生这种情况.我们遵循我们可以找到的每个指南,但问题仍然存在.
我有我正努力通过一个按钮来启动一个批处理文件,但是当我尝试启动批处理文件,它不运行基本HTA.当我按下按钮时,命令提示符窗口启动但不运行脚本.
这是代码的简单示例:
<HTML>
<HEAD>
<TITLE>Fix</TITLE>
</HEAD>
<BODY>
<FORM>
<INPUT TYPE="Run" NAME="Button" VALUE="Click">
<SCRIPT FOR="Button" EVENT="onClick" LANGUAGE="VBScript">
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "cmd.exe '.\example.bat'"
</SCRIPT>
</FORM>
</BODY>
</HTML>
Run Code Online (Sandbox Code Playgroud)
如何从与HTA相同的工作目录(或子目录)中启动批处理文件?
谢谢