Reusing preexisting VMM IP Pool
We have upgraded to SCVMM 2012 r2. We had issues with the upgrade process and recreated our VMM application host and database. We have an exsisting IP pool we would like to continue to use. During configuration we had IP addresses assigned to the original
IP start reporting as being assigned. However we wanted to create another logical network and executed the revoke powershell script. Now we can't get them to show as assigned.
A refresh of the virtual machines in VMM re-associated almost all but one IP address in the pool.
Similar Messages
-
Not able to create disaster recovery VMM -- ovm pool / repository ownership issue
I have installed VMM and VMS and create a server pool with 3.0.2 version.
To test disaster recovery, I rebuild the VMM with the old UUID by
runInstaller.sh --uuid 0004fb00000100002ae.....
and restore the repository database.
The new VMM (same IP as old one) can recognize the VMS but can not complete the clone process. Couple hours later, all VMSs reboot and the event showed: server cluster is down. After that, I can clone the VM from template as before. But I when I use "Edit the server pool" to assign Master Server, it show:
OVMRU_000039E Cannot perform operations. Server pool: VMSP1, is owned by another manager.
How to query the owner of Server pool and how to fix?
Thanks,
Shun-Jee LiuMore information:
.ovspoolfs:
OVS_POOLFS_UUID=0004fb00000500002db902059c9fb1d6
OVS_POOLFS_NFSBASE_UUID=
OVS_POOLFS_MGR_UUID=0004fb00000100002ae......
OVS_POOLFS_VERSION=3.0
OVS_POOLFS_POOL_UUID=0004fb00000200006908301358c88ab9
OVS_POOLFS_LUN_UUID=3600144f03837090000004ebe8dab0001
OVS_POOLFS_MGR_UUID matches the UUID in OVM Manager. Have no idea about OVS_POOLFS_UUID.
Shun-Jee Liu -
VMM 2012R2 - cannot extract IP using Powershell
Hello everyone,
I have 4 Hyper-V VMs in SCVMM 2012R2, 2 x 2012R2 and 2 x 2008R2, and when I run the following command, I only get an IP back for the 2012 ones.
Get-SCVirtualMachine
"VMname"
|
select
-ExpandProperty
VirtualNetworkAdapters
|
Selectname,IPv4Addresses
Name IPv4Addresses
2008VM01 {}
2008VM02 {}
2012VM01 {10.20.20.20}
2012VM02 {10.20.20.21}
They are all on the same VM network, which does not have a VMM IP Pool, it has a normal DHCP server, which has got the relevant reservations for all of them, and the IP's are all defined manually within the VM's OS. Indeed, connectivity to/from all of them
over IP is fine.
In VMM they are all set to "dynamic IPaddress" and "static mac address", and none of them were built from a template, all manually created.
So it is all working OK, communications-wise, I just can't expose the IPs for the 2008 ones through Powershell (nor does VMM see it in the "Connection details" tab in VMM), which I need to do for a script I (am trying to!) run..
I do have other 2008 VMs that Powershell can see the IPs of, so it is just these two..
Thoughts appreciated !
DavidThis was resolved by upgrading the Integration Tools.. they were on ver 6.1.7601.17514, they're now ver on 6.3.9600.16384
-
Implement row-level security using Oracleu2019s Virtual Private Databases (VPD)
Environment: Business Objects XI R2; Oracle 10g
Functional Requirement:
Implement row-level security using Oracleu2019s Virtual Private Databases (VPD) technology. The restriction is that the Business Objects Universe connection should use a generic/u201Capplicationu201D database user account. This will allow the organization to avoid the situation where the Business Objects password and the Oracle password need to be kept in synch.
What do we need from the Business Objects support team?
1. Review the 2 attempted solutions that we have tried to implement
2. Propose solutions/answers to open questions for each of the attempted solutions
3. Propose any alternate solution that will help us implement the Function Requirement stated above
Attempted Solution 1: Connection String uses Oracle Proxy User
The connection string that is specified in the Universe is the following:
app_user[end_user]/app_user_pwdarrobaDatabase.WORLD
app_user = generic application user
end_user = the oracle account of the end user which is set using arrobaVariable('BOUSER') app_user_pwd = password of the generic application user
We have tried and implemented this in our test environment. However, we have some questions and concerns around how the connections are reused in a connection pool environment.
Open Question for Solution 1:
i. What happens when multiple proxy users try to connect on at the same time? Business Objects shares the generic app_user connect string. However, every user that logs on will have their own unique proxy user credentials. Will there be any contention involved? If so, what kind of errors can we expect?
ii. If a user logs on using his credentials (proxy user), and business objects opens up a connection to the database using that user's credentials (as the proxy user but logging in through the generic app user). Then the user exits out --> based on our test today, it seems like the database connection remains open. In that case, if another user logs on similarly with their credentials, will business objects simply assign the first users connection to that second user? If so, then our security will not work. Is there a way that Business Objects can somehow ensure that everytime we close a report, the connection is also terminated both at the BO and DB levels?
iii. Our 3rd question is general high level -> How connection pooling works in general and how it is implemented in BO, i.e. how are new connections assigned, how are they recycled, how are they closed, etc.
Attempted Solution 2: Using the ConnectInit parameter
Reading through a couple of the Business Objects documents, it states that u201CUsing the ConnectInit parameter it is possible to send commands to the database when opening the session which can be used to set database specific parameters used for optimization.u201D
Therefore, we tried to set the parameter in the Universe using several different options:
ConnectInit = BEGIN SYSTEM.prc_logon('arrobaVARIABLE('BOUSER')'); COMMIT; END; ConnectInit = BEGIN DBMS_SESSION.SET_IDENTIFIER('arrobaVariable('BOUSER')'); COMMIT; END;
Neither of the above iterations or any variation of that seemed to work. It seems that the variable is not being set or being u201Cexecutedu201D on the database.
One of the Business Objects documents had stated that Patch ID 38, 977, 350 must be installed in our BO environments. We have verified that this patch has been applied on our system.
Open Questions for Solution 2:
How do we get the parameter ConnectInit to work? i.e. what is the proper syntax to enter and what other things do we need to check to get this to work.
Note: Arroba word is being used instead of the symbol in order to avoid following error message:
We are sorry but your message can not be posted since you have included an email address. Please remove the email address and re-post.the connectinit setting should look something like this:
declare a date; begin vpd_setup('@VARIABLE('BOUSER')'); Commit; end;
The vpd_setup procedure (in Oracle) should look like this:
CREATE OR REPLACE procedure vpd_setup (p_user varchar)IS
BEGIN
DBMS_SESSION.set_vpd( 'SESSION_VALUES', 'USERID', p_user );
END vpd_setup;
Then you can retrieve the value of the context variable in your vpd functions
and set the vpd. -
RMI Performance Comp. with Forte
Hi All,
I know that this topic has been discussed on the list
already, but I would like to find out whether the
current state of Sun's RMI implementation is like
I imagine it, and I want to compare with our Forte
Service objects too. Basically, these seem to be
issues that negatively affect performance,
1. A thread is created on the server per request, and
there is no way to change this easily (i.e. reuse
threads from a pool)
2. Each call opens a new socket.
In particular, does it make sense to replace RMI with
CORBA for increased performance and scalability? Can a
PC-based server handle loads of about 1000 remote
calls per second (considering the overhead imposed by
RMI/other communication methods only)? or Shall we
compare Forte against RMI.
Thankx,
BabuOkay,
A method invocation (or function call or procedure call or whatever) is
always a synchronous call. This means, you ask the service to do something
and wait for the function to complete, optionally with return values. It is
possible, that within the method, a separate thread is started, that
continues after the method is completed, but that doesn't change the
mechanism that a method invocation is a synchronous call.
In Forte, it is possible to start a method as an asynchronous call, with the
"start task" command. In that case, the caller does not wait for the method
to complete and return values are not handled. If this method invocation
happens across a network (making it a Remote Method Invocation) then a
socket will be opened when the call is made and closed immediately after. It
does solve the one-socket-per-caller problem, but not the
one-thread-per-caller problem. Also, it does remove the possibility of
receiving return values.
If you want to keep using method invocations as synchronous calls with
return values, but you also want to share resources like sockets and
threads, then you have to use TP-monitoring concepts. You must have a two
way, asynchronous call with an additional parameter. This means, the client
does a single, brief call that re-uses an existing thread and immediately
frees the socket it used. The client passes all required parameters and one
additional parameter to identify itself. In Forte, this would be a reference
to an anchored object on the client-partition. Then the client waits
(possibly blocks). The server completes the request and locates the client
that sent the request. The server invokes a method on the client, informing
that the request was handled. The server now also passes all return values.
The client exits its wait-state and continues.
In Forte (even if you use other mechanisms to hook into Forte), every call
still is a separete thread. If you wish to re-use existing threads, this
must be done using events. So, a client invokes a method asynchronously
(using "start task") and waits. The server start a new thread and posts an
event. Each existing thread is either idle in an event loop or busy handling
a previous event. The new event is added to the queue of all event loops and
the original thread is terminated (the socket was already freed). One event
loop of the thread-pool will be the first one to respond to the event, mark
this somewhere (maybe using mutex) and start handling it. All the others
will eventually respond to the event as well, but will be able to see that
the event is already being handled and ignore it.
This does introduce overhead and it makes your application more complex, but
it also prevents you running out of resources.
Now, the real issue is not the amount of calls per second, but a combination
of calls per second and seconds to complete the call. Using these two
numbers, you can calculate the amount of tasks the server has to be handling
simultaneously at any given time (average). Using the above described
technique you can handle intermittent, large loads, because if there are
more requests than available resources (threads) at any given time, the
requests will simply be put in a queue and handled later. However, if the
over-load continues for a prolonged period of time, the queue will simply
grow and grow and grow until the partition crashes and all queued items will
be lost.
Then it is time for load-balancing. You install several additional servers
and run a serverprocess on each of these machines. And you use a router that
distributes calls across the different serverprocesses. Forte has built-in
mechanisms for that, that work reasonably well. However, if the amount of
calls per second is so high, that even the short time it takes the router to
relay the request still is too long, so that the router runs out of
resources, then you have to use more complex models, for which Forte doesn't
have any ready-to-use solutions. But neither does CORBA or Java I believe.
One more thing. If you combine the above described mechanism to free sockets
as quickly as possible and use Forte loadbalancing, you might solve all your
problems. Just install 6 overloaded server processes. This results in 6
processes times 256 threads per process equals 1536 simultaneous tasks. If
each task is an asynchronous method invocation that immediately frees its
socket, then you never block you're whole server by using all sockets and
you're still able to do handle 1536 requests simultaneously.
Remember, if you have such a large load of calls per second, that all pass
through the same machine (router) then you'll run into hardware limitations
and no software solution can fix that. You have to find a mechanism to
distribute calls across different nodes without using a single router. For
example, cluster clients and have a single server node per cluster.
Pascal.
-----Original Message-----
From: Babu Raj [SMTP:ibcsmartboyyahoo.com]
Sent: Friday, March 24, 2000 3:42 PM
To: Rottier, Pascal
Cc: kamranaminyahoo.com
Subject: RE: (forte-users) RMI Performance Comp. with Forte
Hi,
I believe in CORBA, ORB maintains the same
connection ( Same Socket) for multiple calls, on the
same Servant object, unless otherwise its ONEWAY call.
But RMI uses the same strategy as Forte, I'm not sure
either on this. Thats the reason, i asked the previous
question.
Thankx,
Babu
--- "Rottier, Pascal" <Rottier.Pascalpmintl.ch>
wrote:
How are CORBA and RMI different then Forte (one
socket and one thread per
call)?
-----Original Message-----
From: Babu Raj [SMTP:ibcsmartboyyahoo.com]
Sent: Friday, March 24, 2000 3:18 PM
To: kamranaminyahoo.com
Subject: (forte-users) RMI Performance Comp. withForte
Hi All,
I know that this topic has been discussed on thelist
already, but I would like to find out whether the
current state of Sun's RMI implementation is like
I imagine it, and I want to compare with our Forte
Service objects too. Basically, these seem to be
issues that negatively affect performance,
1. A thread is created on the server per request,and
there is no way to change this easily (i.e. reuse
threads from a pool)
2. Each call opens a new socket.
In particular, does it make sense to replace RMIwith
CORBA for increased performance and scalability?Can a
PC-based server handle loads of about 1000 remote
calls per second (considering the overhead imposedby
RMI/other communication methods only)? or Shall we
compare Forte against RMI.
Thankx,
Babu
For the archives, go to:
http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. Tounsubscribe, send in a new
email the word: 'Unsubscribe' to:forte-users-requestlists.xpedior.com
For the archives, go to:
http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To
unsubscribe, send in a new
email the word: 'Unsubscribe' to:
forte-users-requestlists.xpedior.com
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com -
Help - Tomcat - Package not found in import
Error: 500
Location: /htmltest/login.jsp
Internal Servlet Error:
org.apache.jasper.JasperException: Unable to compile C:\jdk1.3.1\jakarta-tomcat-3.3a\work\DEFAULT\htmltest\login_1.java:5: Package usingjsp not found in import.
import usingjsp.*;
^
1 error
at org.apache.tomcat.facade.JasperLiaison.javac(Unknown Source)
at org.apache.tomcat.facade.JasperLiaison.processJspFile(Unknown Source)
at org.apache.tomcat.facade.JspInterceptor.requestMap(Unknown Source)
at org.apache.tomcat.core.ContextManager.processRequest(Unknown Source)
at org.apache.tomcat.core.ContextManager.internalService(Unknown Source)
at org.apache.tomcat.core.ContextManager.service(Unknown Source)
at org.apache.tomcat.modules.server.Http10Interceptor.processConnection(Unknown Source)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(Unknown Source)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(Unknown Source)
at java.lang.Thread.run(Thread.java:484)
Above is the error I encounter when running my JSP and Servlets combination under Tomcat3.3a
Can anyone pls tell me basically what error is that?
The path for my package "usingjsp" is c:\jdk13~1.1\jakart~1.3a\webapps\examples\web-inf\classes\usingjsp
I put my package under that directory because to my knowledge Tomcat requires all servlet to be put under there by default.
The path for my JSP file is c:\jdk13~1.1\jakart~1.3a\webapps\htmltest.
NOTE: I had modified the XML file.
Under that folder there is 2 classes named LoginServlet and UserDataTable.
Below are my codes:
1. logintest.html
<html>
<body>
<form action="login.jsp" method="post">
<table>
<tr><td>Username: <td><input type="text" name="username">
<tr><td>Password: <td><input type="password" name="password">
</table>
<input type="submit" value="SUBMIT">
</form>
</body>
</html>
2. login.jsp
<%@ page language="java" import="java.util.*" %>
<%@ page import="usingjsp.*" %>
<html>
<body bgcolor="#a3355f">
<%
String userName = request.getParameter("username");
String password = request.getParameter("password");
String userKey = UserDataTable.createUserData();
Hashtable userData = UserDataTable.getUserData(userKey);
userData.put("username", userName);
%>
<form action="/examples/servlet/LoginServlet" method="post">
<input type="hidden" name="userKey" value="<%userKey%>">
<input type="submit" value="SUBMIT">
</form>
</body>
</html>
3. LoginServlet.java
//package usingjsp;
import javax.servlet.*;
import java.io.*;
import java.util.*;
public class LoginServlet extends GenericServlet {
public void service(ServletRequest req, ServletResponse res) throws IOException {
res.setContentType("text/html");
PrintWriter out = res.getWriter();
String userKey = req.getParameter("userKey");
Hashtable userData = new Hashtable();
UserDataTable temp = new UserDataTable();
userData = temp.getUserData(userKey);
if (userData == null) {
out.println("<html>");
out.println("<body>");
out.println("<h1>SORRY<h1>");
out.println("</body>");
out.println("</html>");
return;
String userName = (String)userData.get("username");
out.println("<html>");
out.println("<body>");
out.println("<h1>" + userName + "<h1>");
out.println("</body>");
out.println("</html>");
4. UserDataTable.java
//package usingjsp;
import java.util.*;
public class UserDataTable {
protected static Hashtable userData = new Hashtable();
protected static Random keyGenerator = new Random();
public static String createUserData() {
String userKey = "" + keyGenerator.nextLong();
userData.put(userKey, new Hashtable());
return userKey;
public static Hashtable getUserData(String userKey) {
if (userKey == null) return null;
return (Hashtable) userData.get(userKey);
public static void clearUserData(String userKey) {
if (userKey == null) return;
userData.remove(userKey);
}Pls let me know if you need more info. Thanks!1. login.jsp
<%@ page language="java" import="java.util.*" %>
<%@ page import="classes.servlets.*" %>
<html>
<body bgcolor="#a3355f">
<%
String userName = request.getParameter("username");
String password = request.getParameter("password");
String userKey = UserDataTable.createUserData();
Hashtable userData = UserDataTable.getUserData(userKey);
userData.put("username", userName);
%>
<form action="/classes/servlet/LoginServlet" method="post">
<input type="hidden" name="userKey" value="<%userKey%>">
<input type="submit" value="SUBMIT">
</form>
</body>
</html>
2. UserDataTable.java
package classes.servlets;
import java.util.*;
public class UserDataTable {
protected static Hashtable userData = new Hashtable();
protected static Random keyGenerator = new Random();
public static String createUserData() {
String userKey = "" + keyGenerator.nextLong();
userData.put(userKey, new Hashtable());
return userKey;
public static Hashtable getUserData(String userKey) {
if (userKey == null) return null;
return (Hashtable) userData.get(userKey);
public static void clearUserData(String userKey) {
if (userKey == null) return;
userData.remove(userKey);
3. LoginServlet.java
package classes.servlets;
import javax.servlet.*;
import java.io.*;
import java.util.*;
public class LoginServlet extends GenericServlet {
public void service(ServletRequest req, ServletResponse res) throws IOException {
res.setContentType("text/html");
PrintWriter out = res.getWriter();
String userKey = req.getParameter("userKey");
Hashtable userData = new Hashtable();
UserDataTable temp = new UserDataTable();
userData = temp.getUserData(userKey);
if (userData == null) {
out.println("<html>");
out.println("<body>");
out.println("<h1>SORRY<h1>");
out.println("</body>");
out.println("</html>");
return;
String userName = (String)userData.get("username");
out.println("<html>");
out.println("<body>");
out.println("<h1>" + userName + "<h1>");
out.println("</body>");
out.println("</html>");
}I had added CLASSPATH=c:\jdk13~1.1\jakart~1.3a\webapps\internet\web-inf into autoexec.bat.
I had been able to compile UserDataTable.java and LoginServlet.java.
Path for UserDataTable = c:\jdk13~1.1\jakart~1.3a\webapps\internet\web-inf\classes\servlets\UserDataTable.java
Path for LoginServlet = c:\jdk13~1.1\jakart~1.3a\webapps\internet\web-inf\classes\servlets\UserDataTable.java
server.xml<?xml version="1.0" encoding="ISO-8859-1"?>
<Server>
<!-- You can add a "home" attribute to represent the "base" for
all relative paths. If none is set, the TOMCAT_HOME property
will be used, and if not set "." will be used.
webapps/, work/ and log/ will be relative to this ( unless
set explicitely to absolute paths ).
-->
<ContextManager workDir="work" >
<!-- ==================== Global modules ==================== -->
<LoaderInterceptor11 useApplicationLoader="true" />
<TrustedLoader />
<LogSetter name="tc_log" timestamps="true"
verbosityLevel="INFORMATION" />
<LogEvents enabled="false" />
<!-- Backward compat: read the Context declarations from server.xml-->
<ContextXmlReader config="conf/server.xml" />
<!-- Separated Context -->
<ContextXmlReader config="conf/apps.xml" />
<AutoDeploy source="modules" target="modules"
redeploy="true" />
<AutoWebApp dir="modules" host="DEFAULT" trusted="true"/>
<AutoDeploy source="webapps" target="webapps" />
<AutoWebApp dir="webapps" host="DEFAULT" />
<PolicyLoader securityManagerClass="java.lang.SecurityManager"
policyFile="conf/tomcat.policy" />
<SimpleMapper1 />
<SessionExpirer checkInterval="60" />
<!-- For development you can use randomClass="java.util.Random" -->
<SessionIdGenerator randomClass="java.security.SecureRandom"
randomFile="/dev/urandom" />
<!-- ========== context processing modules ========== -->
<!-- This will be the "default" profile
( all except the "global" modules can be set per context )
-->
<LogSetter name="servlet_log"
timestamps="true"
verbosityLevel = "INFORMATION"
path="logs/servlet-${yyyyMMdd}.log"
/>
<LogSetter name="JASPER_LOG"
timestamps="true"
path="logs/jasper-${yyyyMMdd}.log"
verbosityLevel = "INFORMATION" />
<WebXmlReader validate="true" />
<ErrorHandler showDebugInfo="true" />
<WorkDirSetup cleanWorkDir="false" />
<Jdk12Interceptor />
<!-- Non-standard invoker, for backward compat. ( /servlet/* ) -->
<InvokerInterceptor />
<!-- you can add javaCompiler="jikes" -->
<JspInterceptor keepGenerated="true"
largeFile="false"
useJspServlet="false"
/>
<StaticInterceptor listings="true" />
<ReloadInterceptor fullReload="true" />
<SimpleSessionStore maxActiveSessions="-1" />
<AccessInterceptor />
<CredentialsInterceptor />
<SimpleRealm filename="conf/users/global-users.xml" />
<!-- UnComment the following and comment out the
above to get a JDBC realm.
Other options for driverName:
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
connectionName="scott"
connectionPassword="tiger"
driverName="org.gjt.mm.mysql.Driver"
connectionURL="jdbc:mysql://localhost/authority"
connectionName="test"
connectionPassword="test"
"connectionName" and "connectionPassword" are optional.
-->
<!--
<JDBCRealm
debug="99"
driverName="sun.jdbc.odbc.JdbcOdbcDriver"
connectionURL="jdbc:odbc:TOMCAT"
userTable="users"
userNameCol="user_name"
userCredCol="user_pass"
userRoleTable="user_roles"
roleNameCol="role_name" />
-->
<LoadOnStartupInterceptor />
<Servlet22Interceptor />
<!-- Tag pooling support.
To enable the reuse of tag handlers as described in
the JSP spec, uncomment the following. If your pages
use a lot of custom tags, you should see a nice performance
gain.
Note that placing the interceptor here will enable
Tag pooling for all of the web applicatitions loaded -
this may be a bad thing if all tags are not coded to
handle reuse. To enable pooling only for specific web
applications i.e. Contexts, place the interceptor inside of
the Context's definition.
To view information about tag usage uncomment the tag
LogSetter. Set verbosityLevel to DEBUG to see everytime
a tag is obtained and released.
-->
<!--
<LogSetter name="tag_pool_log" timestamps="true"
path="logs/tagpool-${yyyyMMdd}.log"
verbosityLevel="INFORMATION" />
<TagPoolManagerInterceptor />
-->
<!-- Request processing -->
<DecodeInterceptor />
<SessionId cookiesFirst="true" noCookies="false" />
<!-- Automatic config generation
Set noRoot="false" if you wish to have Tomcat try to take
control of the external web server's root context.
Additonal configuration of the external web server may be
required for this to be successful.
Note: Configuration files are not written as part of the
default startup behvior. Append "jkconf" to the startup
command to have Tomcat initialize, write the config files,
then exit. This may be done while Tomcat is running.
-->
<ApacheConfig noRoot="true" />
<IISConfig noRoot="true" />
<NSConfig noRoot="true" />
<!-- Uncoment for apache-style logs
Attributes: logFile, flush, format
<AccessLogInterceptor/>
-->
<!-- ==================== Connectors ==================== -->
<!-- new http adapter. Attributes:
secure - use SSL ( https )
keystore, keypass - certs for SSL
port
reportedname - Server name to send back to browser
by default report Tomcat Web Server ...
set an empty string to avoid sending server header
-->
<Http10Connector port="8080"
secure="false"
maxThreads="100"
maxSpareThreads="50"
minSpareThreads="10" />
<!--
Uncomment this for SSL support. You _need_ to set up a
server certificate if you want this to work, and you
need JSSE. See tomcat-ssl-howto.html for more detailed
instructions.
1. Make the JSSE jars available to Tomcat, either by making
them an installed extension or by adding them to the
Tomcat CLASSPATH.
2. Do: keytool -genkey -alias tomcat -keyalg RSA
RSA is essential to work with Netscape and IIS.
Use "changeit" as password. ( or add keypass attribute )
You don't need to sign the certificate.
-->
<!--
<Http10Connector port="8443" secure="true" />
-->
<!--
JNI connector. It assumes the library is located in
TOMCAT_HOME/bin/native/jni_connect.[dll, nlm, so]. or in LD_LIBRARY_PATH.
For different paths set "nativeLibrary" parameter.
The JniConnector will be self-enable only if JNI mode is detected.
-->
<JniConnector />
<!-- Apache AJP12 support. This is also used to shut down tomcat.
Parameter "address" defines network interface this Interceptor
"binds" to. Add it if you want to "bind" to just "127.0.0.1".
address="127.0.0.1"
Parameter "tomcatAuthentication", controls if Tomcat honors
( and uses ) auth done in HTTP Server or not, when true Tomcat does
not use in any way auth information provided by the HTTP Server.
true is the default.
tomcatAuthentication="false"
-->
<Ajp12Connector port="8007" />
<!-- Apache AJP13 support (mod_jk)
Parameter "address" defines network interface this Interceptor
"binds" to. Add it if you want to "bind" to just "127.0.0.1".
address="127.0.0.1"
Parameter "tomcatAuthentication", controls if Tomcat honors
( and uses ) auth done in HTTP Server or not, when true Tomcat does
not use in any way auth information provided by the HTTP Server.
true is the default.
tomcatAuthentication="false"
-->
<Ajp13Connector port="8009" />
<!--
Context definitions can be placed here ( not recommended ) or
in separate files. The ContextXmlReader will read all context
definitions ( you can customize the "base" filename ).
The default is conf/apps-[name].xml.
See conf/apps-examples.xml and conf/apps-admin.xml
-->
<Context path="/internet"
docBase="webapps/internet"
crossContext="true"
debug="0"
reloadable="true"
trusted="false" >
</Context>
</ContextManager>
</Server>The directory structure is:
<c:\>
<jdk13~1.1>
<jakart~1.3a>
<webapps>
<internet>
<jsp>
<web-inf>
<classes>
<servlets>
<beans>P/S: Actually, I would want to add c:\jdk13~1.1\jakart~1.3a\webapps into CLASSPATH, so that I can use the package as internet.web-inf.classes.servlet (instead of current version of classes.servlet).
However, the compiler would not let me compile because it says ";" expected at web-inf (I think the hyphen is not allowed). Is there any other solution?
Thanks and sorry to bother you again! -
Overriding Tomcat's directory listing
I made my own directory listing JSP which includes thumbnails of pictures. Right now I have to copy the file, index.jsp, into every directory to make it the directory listing. How can I stop this?
It doesn't seem to be working, but I suspect it is a newbie error on my part. Here' s my server.xml (I tried it as shown below, in my apps-project.xml file, and outside the <server> key:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Server>
<!-- You can add a "home" attribute to represent the "base" for
all relative paths. If none is set, the TOMCAT_HOME property
will be used, and if not set "." will be used.
webapps/, work/ and log/ will be relative to this ( unless
set explicitely to absolute paths ).
-->
<ContextManager workDir="work" >
<StaticInterceptor listing="false" />
<!-- ==================== Global modules ==================== -->
<LoaderInterceptor11 useApplicationLoader="true" />
<TrustedLoader />
<LogSetter name="tc_log" timestamps="true"
verbosityLevel="INFORMATION" />
<LogEvents enabled="false" />
<!-- Backward compat: read the Context declarations from server.xml-->
<ContextXmlReader config="conf/server.xml" />
<!-- Separated Context -->
<ContextXmlReader config="conf/apps.xml" />
<AutoDeploy source="modules" target="modules"
redeploy="true" />
<AutoWebApp dir="modules" host="DEFAULT" trusted="true"/>
<AutoDeploy source="webapps" target="webapps" />
<AutoWebApp dir="webapps" host="DEFAULT" />
<PolicyLoader securityManagerClass="java.lang.SecurityManager"
policyFile="conf/tomcat.policy" />
<SimpleMapper1 />
<SessionExpirer checkInterval="60" />
<!-- For development you can use randomClass="java.util.Random" -->
<SessionIdGenerator randomClass="java.security.SecureRandom"
randomFile="/dev/urandom" />
<!-- ========== context processing modules ========== -->
<!-- This will be the "default" profile
( all except the "global" modules can be set per context )
-->
<LogSetter name="servlet_log"
timestamps="true"
verbosityLevel = "INFORMATION"
path="logs/servlet-${yyyyMMdd}.log"
/>
<LogSetter name="JASPER_LOG"
timestamps="true"
path="logs/jasper-${yyyyMMdd}.log"
verbosityLevel = "INFORMATION" />
<WebXmlReader validate="true" />
<ErrorHandler showDebugInfo="true" />
<WorkDirSetup cleanWorkDir="false" />
<Jdk12Interceptor />
<!-- Non-standard invoker, for backward compat. ( /servlet/* ) -->
<InvokerInterceptor />
<!-- you can add javaCompiler="jikes" -->
<JspInterceptor keepGenerated="true"
largeFile="false"
useJspServlet="false"
/>
<StaticInterceptor listings="true" />
<ReloadInterceptor fullReload="true" />
<SimpleSessionStore maxActiveSessions="-1" />
<AccessInterceptor />
<CredentialsInterceptor />
<SimpleRealm filename="conf/users/global-users.xml" />
<!-- UnComment the following and comment out the
above to get a JDBC realm.
Other options for driverName:
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
connectionName="scott"
connectionPassword="tiger"
driverName="org.gjt.mm.mysql.Driver"
connectionURL="jdbc:mysql://localhost/authority"
connectionName="test"
connectionPassword="test"
"connectionName" and "connectionPassword" are optional.
-->
<!--
<JDBCRealm
debug="99"
driverName="sun.jdbc.odbc.JdbcOdbcDriver"
connectionURL="jdbc:odbc:TOMCAT"
userTable="users"
userNameCol="user_name"
userCredCol="user_pass"
userRoleTable="user_roles"
roleNameCol="role_name" />
-->
<LoadOnStartupInterceptor />
<Servlet22Interceptor />
<!-- Tag pooling support.
To enable the reuse of tag handlers as described in
the JSP spec, uncomment the following. If your pages
use a lot of custom tags, you should see a nice performance
gain.
Note that placing the interceptor here will enable
Tag pooling for all of the web applicatitions loaded -
this may be a bad thing if all tags are not coded to
handle reuse. To enable pooling only for specific web
applications i.e. Contexts, place the interceptor inside of
the Context's definition.
To view information about tag usage uncomment the tag
LogSetter. Set verbosityLevel to DEBUG to see everytime
a tag is obtained and released.
-->
<!--
<LogSetter name="tag_pool_log" timestamps="true"
path="logs/tagpool-${yyyyMMdd}.log"
verbosityLevel="INFORMATION" />
<TagPoolManagerInterceptor />
-->
<!-- Request processing -->
<DecodeInterceptor />
<SessionId cookiesFirst="true" noCookies="false" />
<!-- Automatic config generation
Set noRoot="false" if you wish to have Tomcat try to take
control of the external web server's root context.
Additonal configuration of the external web server may be
required for this to be successful.
Note: Configuration files are not written as part of the
default startup behvior. Append "jkconf" to the startup
command to have Tomcat initialize, write the config files,
then exit. This may be done while Tomcat is running.
-->
<ApacheConfig noRoot="true" />
<IISConfig noRoot="true" />
<NSConfig noRoot="true" />
<!-- Uncoment for apache-style logs
Attributes: logFile, flush, format
<AccessLogInterceptor/>
-->
<!-- ==================== Connectors ==================== -->
<!-- new http adapter. Attributes:
secure - use SSL ( https )
keystore, keypass - certs for SSL
port
reportedname - Server name to send back to browser
by default report Tomcat Web Server ...
set an empty string to avoid sending server header
-->
<Http10Connector port="8080"
secure="false"
maxThreads="100"
maxSpareThreads="50"
minSpareThreads="10" />
<!--
Uncomment this for SSL support. You _need_ to set up a
server certificate if you want this to work, and you
need JSSE. See tomcat-ssl-howto.html for more detailed
instructions.
1. Make the JSSE jars available to Tomcat, either by making
them an installed extension or by adding them to the
Tomcat CLASSPATH.
2. Do: keytool -genkey -alias tomcat -keyalg RSA
RSA is essential to work with Netscape and IIS.
Use "changeit" as password. ( or add keypass attribute )
You don't need to sign the certificate.
-->
<!--
<Http10Connector port="8443" secure="true" />
-->
<!--
JNI connector. It assumes the library is located in
TOMCAT_HOME/bin/native/jni_connect.[dll, nlm, so]. or in LD_LIBRARY_PATH.
For different paths set "nativeLibrary" parameter.
The JniConnector will be self-enable only if JNI mode is detected.
-->
<JniConnector />
<!-- Apache AJP12 support. This is also used to shut down tomcat.
Parameter "address" defines network interface this Interceptor
"binds" to. Add it if you want to "bind" to just "127.0.0.1".
address="127.0.0.1"
Parameter "tomcatAuthentication", controls if Tomcat honors
( and uses ) auth done in HTTP Server or not, when true Tomcat does
not use in any way auth information provided by the HTTP Server.
true is the default.
tomcatAuthentication="false"
-->
<Ajp12Connector port="8007" />
<!-- Apache AJP13 support (mod_jk)
Parameter "address" defines network interface this Interceptor
"binds" to. Add it if you want to "bind" to just "127.0.0.1".
address="127.0.0.1"
Parameter "tomcatAuthentication", controls if Tomcat honors
( and uses ) auth done in HTTP Server or not, when true Tomcat does
not use in any way auth information provided by the HTTP Server.
true is the default.
tomcatAuthentication="false"
-->
<Ajp13Connector port="8009" />
<!--
Context definitions can be placed here ( not recommended ) or
in separate files. The ContextXmlReader will read all context
definitions ( you can customize the "base" filename ).
The default is conf/apps-[name].xml.
See conf/apps-examples.xml and conf/apps-admin.xml
-->
</ContextManager>
</Server> -
Severe level log o.d.r.utils.Connections
Hi,
I would to find to out why I am getting the following log message (Logging Page - Log) in sqldeveloper when connecting to a some databases:
Level - Sequence - Elapsed - Source - Message
SEVERE - 820 - 5 - o.d.r.utils.Connections -
o.d.r.utils.Connections seems to be short for: oracle.dbtools.raptor.utils.Connections
There is no information apart from that being logged, and I do not have any other severe messages being logged either. I can also see objects in the database and run queries.
This message is also not happening on all my database connections, so it may have nothing to do with JDeveloper - but how to I identify the problem? How can I get more information on this error and why it is being logged?
SQLDeveloper version: 3.2.10.09
Java JDK: 1.6.0_26
Oracle Database: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
Regards,Could you please post your resulting udcx? I have no problem to connect to owssvr with .udcx. The only difference is I'm reusing preexisting files created by Sharepoint Designer not by InfoPath. To create one in SD go to Data Source Library -> Server Side Scripts.
Here is mine:
<?xml version="1.0" encoding="UTF-8"?>
<?MicrosoftWindowsSharePointServices ContentTypeID="0x010100B4CBD48E029A4ad8B62CB0E41868F2B0"?>
<udc:DataSource MajorVersion="2" MinorVersion="0" xmlns:udc="http://schemas.microsoft.com/office/infopath/2006/udc">
<udc:Name>owssvr</udc:Name>
<udc:Description>Format: UDC V2; Connection Type: XmlQuery; Purpose: ReadOnly; Generated by Microsoft Office InfoPath 2007 on 2009-03-10 at 17:02:55 by DW\PojidaevAB.</udc:Description>
<udc:Type MajorVersion="2" MinorVersion="0" Type="XmlQuery">
<udc:SubType MajorVersion="0" MinorVersion="0" Type=""/>
</udc:Type>
<udc:ConnectionInfo Purpose="ReadOnly" AltDataSource="">
<udc:WsdlUrl/>
<udc:SelectCommand>
<udc:ListId/>
<udc:WebUrl/>
<udc:ConnectionString/>
<udc:ServiceUrl UseFormsServiceProxy="false"/>
<udc:SoapAction/>
<udc:Query>http://myServer/_vti_bin/owssvr.dll?Cmd=Display&List={5B8F5886-FE3A-4008-86AE-4615E1264F47}&FilterField1=Announcement_x0020_Type&FilterValue1=Audit%20Request&XMLDATA=TRUE</udc:Query>
</udc:SelectCommand>
<udc:UpdateCommand>
<udc:ServiceUrl UseFormsServiceProxy="false"/>
<udc:SoapAction/>
<udc:Submit/>
<udc:FileName>Specify a filename or formula</udc:FileName>
<udc:FolderName AllowOverwrite=""/>
</udc:UpdateCommand>
<!--udc:Authentication><udc:SSO AppId='' CredentialType='' /></udc:Authentication-->
</udc:ConnectionInfo>
</udc:DataSource>
http://alecpojidaev.wordpress.com -
Connection to db rejected.Cannot connect to MySQL server
here is the excaption
connectToDb:02 - connection to db rejected.Cannot connect to MySQL server on localhost:3306. Is there a MySQL server running on the machine/port you are trying to connect to? (java.net.BindException)
and her is the class
import java.io.*;
import java.sql.*;
import java.util.*;
public class DBconnect
{ final static private String _url = "jdbc:mysql://localhost:3306/diamonds"; //final static private String _driver = "sun.jdbc.odbc.JdbcOdbcDriver";
//final static private String _url = "jdbc:odbc:diamonds"; //final static private String _driver = "sun.jdbc.odbc.JdbcOdbcDriver";
public Connection _con = null;
//private static Driver driver = null;
private static Properties properties = null;
Statement stmt = null;
public PrintStream out;
**connectToDb **
public void connectToDb() throws IOException
//connect to the server and open the database
try{
Class.forName("org.gjt.mm.mysql.Driver");
//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//driver = (Driver)Class.forName (_driver).newInstance();
properties = new Properties();
properties.put("user","sa");
properties.put("password","");
catch (ClassNotFoundException e)
System.out.println("class not found:");
e.printStackTrace();
catch (Exception e) {
e.printStackTrace();
throw new IOException("connectToDb:01- JDBC driver not found."+e.getMessage());
synchronized void open()throws Exception
try
if(_con == null)
try
_con = DriverManager.getConnection(_url,properties);
//_con = driver.connect(_url,properties);
catch (SQLException e)
e.printStackTrace();
System.out.println("connectToDb:02 - connection to db rejected."+e.getMessage());
stmt = _con.createStatement();
catch (Exception e)
e.printStackTrace();
System.out.println("connectToDb:02 - connection to db rejected."+e.getMessage());
synchronized void close()
try
if(_con != null)
if(!_con.isClosed())
stmt.close();
_con.close();
_con = null;
catch (Exception e)
System.out.println("es:fail to close connection!!");
}the problem occars when there are a lot of queries that the project is sending to the DB (about 10000) the last half queries fails and send an excaption .
after 2 minutes the system seems like working fine.
I am stack with this problem about a year and cann't resolve it.
any idea????
regards
amnon mwell...new it seems to work fine, but is it ok to
keep connection open for good ???
isn't there any other alternative ???I am bit confused are you pooling the connections?
If so, actually the connections will not always stay open.. they will time out after a while when they are not in use but to specifically answer your question.. how could it possible be a bad thing. If the server/your app was getting bogged down with opening and closing connections then pooling solves this..
Finally as to your question of the alternatives... if the problem was opening and closing connections and reusing them through a pool solved this then I think the answer is no. If you don't like a specific part of the way the pool works it is probably configurable in some way and you could always implement your own pool.. although I wouldn't overly recommend that. The bottom line is that you need to keep your connections open for reuse.. pooling is the simplest way to achieve this.. but no there is no alternative to keeping your connections open if you are having the load problems you described. -
Guest VM Clustering with NVGRE
Hi,
I would like to find out if anyone has try to create Clustered VMs (say SQL cluster) for their tenant on NVGRE.
I understand that SCVMM should be in control everything as it is a single point where Network Virtualization policy is stored. I been wondering how could I deploy a Guest cluster with the Cluster IP which the VMM will not see.
Is it that I have to use PowerShell to manually configure all these additional policy relate to the Cluster IP ? if so, how do it keep track of it ?I got the answer referring to NVGRE with Server
2008 R2 guest VM - NetVirtualizationLookupRecord not created.
Mark has nailed everything in this post and I have tested in our development environment. During the cluster windows creation, the Cluster IP will be using DHCP method to obtain IP from the VMM IP Pool. This also means that the IP assigned to the cluster
is NVGRE aware.
If you need to assign a fix IP as cluster IP, just change the IP after the cluster creation. Now here is the beauty part with Windows Server 2012 R2. When you specify the new IP to the cluster, the NVGRE policy will change along by updating the Lookup record.
The same it goes when you are specifying the IP Address for the SQL Network (if you are doing SQL cluster like myself). -
Reusing Standard Classes for Module pool Programming using Abap Objects
Hi.,
I debugged the ME21n transaction and found a number of classes such as
CL_BASIC_MODEL_VIEW_MM
CL_GENERIC_MODEL_VIEW_MM
CL_GENERIC_VALUE_MODEL_MM
CL_MODEL_CONTAINER_MM
CL_MODEL_CONTROL_VIEW_MM
CL_MODEL_VIEW_MM
CL_TABLE_MODEL_MM
CL_TABLE_MODEL_TREE_VIEW_MM
CL_VALUE_MODEL_MM
CL_VALUE_MODEL_VIEW_MM
CL_BASIC_MODEL_VIEW_MM
CL_COMPOSITE_SCREEN_VIEW_M
CL_CUSTOM_CONTROL_VIEW_MM
CL_EXPAND_BUTTON_VIEW_MM
CL_EXPAND_VIEW_MM
CL_FOREIGN_APPLICATION_VIE
CL_GENERIC_MODEL_VIEW_MM
CL_GRID_VIEW_MM
CL_MODEL_CONTROL_VIEW_MM
CL_MODEL_VIEW_MM
CL_SCREEN_VIEW_MM
CL_SETUPVIEW_BUILDER_MM
CL_SIMPLE_TREE_VIEW_MM
CL_TABLE_MODEL_TREE_VIEW_M
CL_TABLE_VIEW_CONTAINER_MM
CL_TABLE_VIEW_MM
CL_TABSTRIP_VIEW_MM
CL_TC_BUTTON_VIEW_MM
CL_TC_ITEM_VIEW_MM
CL_TOGGLE_VIEW_MM
CL_VALUE_MODEL_VIEW_MM
CL_DEFAULT_CONTROLLER_MM
CL_CONTROLLER_MM
CL_ATP_CONTROLLER_MM
CL_DRAG_DROP_CONTROLLER_MM ..
How we can reuse these classes to build a custom module pool program which supports MVC architecture as used in enjoy SAP transactions .I am very much confused from where to start .
Guide me on this.I want to create a simple module pool program with Subscreens, Table Controls and Tabstrips ..
Regards.,
S.SivakumarHave you got any solution on this.
because i want to use CL_GRID_VIEW_MM->handle_on_data_changed for one of my development related to ME51N. -
Reuse of preparedstatements and the connection pool
It seems useful (for performance reasons) to reuse a prepared statement in
subsequent calls to the database. In WebLogic, however, after each call we
return the Connection object to the WebLogic connection pool. A prepared
statement is created on a specific Connection object. The next time we want
to use the same query we get a Connection from the pool, which might be
another instance of the Connection class. Therefor it seems impossible or at
least dangerous to reuse the same prepared statement. Even in the case this
would work we're indirectly using the other Connection, which we already
returned to the pool and which could be retrieved from the pool by someone
else. So, can't we reuse preparedstatements ?Hi Raja,
Currently the only bullet-proof way to make sure that all statements are
cached is to set the cache size to a number of possible prepared statements
in the application.
The only consequence of increased cache size is growing amount of
memory required by a server instance.
Regards,
Slava Imeshev
"Rajiv Jauhari" <[email protected]> wrote in message
news:[email protected]...
Is there an easy way to tell whether the prepared statement cache size one
has set is
appropriate? Some way to monitor cache hit rate or usage count (i.e., the
actual number of statements cached) while running a load test? I'm using
Weblogic 6.1sp3 and Oracle 8.1.7.4.
Another way to think of this question is: is there a negative impact ifthe
cache size is set too large?
In the case of Oracle I believe one might run out of cursors, but is there
any other negative consequence that you know of?
Thanks,
Rajiv
"Joseph Weinstein" <[email protected]> wrote in message
news:[email protected]...
Vyas wrote:
If multiples (of the same statement) can be cached would it not result
in too many
prepared statements of the same type in the cache ?
This could happen
1. When a load test is done when all the threads start doing exactly
the
same work.
Because of contention everybody gets their own statement copy(theoritically, even
if in practice it may not exactly happen like that). In such a case
you
are going
to create load on the database in terms of open cursors.Each thread will get it's own connection, and the statement cache isper-connection.
Cursors, in Oracle's case, do need to be configured to support acache-full of
retained statements. Alternately, the cache should be set to a smallenough size to
require only as many cursors as the DBMS will allow per connection.
Another issue is what happens when the cache limit is hit ?
In the above example let's say cache limit is 50 and I am doing 50
user
load test.
because of load test let's say the cache gets filled with 50 of the
same
statement.
When load test moves to the next sequence of action requiring a
diffrent
statement
what happens to the cache ?
thanks
VyasThe only way a given connection's statement cache will get a duplicatestatement
is if some single JDBC thread required multiple copies of the samestatement. A
multi-user test will usually just ensure that each pooled connectioncaches the
same selection of different statements that the test user used. If thetest user
just repeatedly makes and uses one statement, the first time they do it,the
statement will be cached, and every subsequent repeat of the user codewill get
the same cached statement. The cache will still have 49 empty slotswaiting for
different statements. Currently the cache is simple-minded. It is a
fixed
(configurable)
size per connection, and the first N prepared/callable statements getcached for the
life of the pooled connection that created them. All other subsequentstatements will
be made and closed on a per-connection-use basis. Therefore, it can bethat a startup
or stress load that runs before standard runtime service, and which usessignificantly
different a statement profile could populate the cache with rarely-usedwasted statements.
If I were a customer in this circumstance, I would either prime thecaches, by determining
which statements I wanted cached, and then running a startup class thatreserved all the
pool connections, and made these statements on each before closing them.Alternately,
after startup/stress I would reset the pool, and allow the runtime load
to
fill the cache of
the regenerated pool.
Joe Weinstein at B.E.A.
thanks
Vyas
Joseph Weinstein <[email protected]> wrote:
JS wrote:
It seems useful (for performance reasons) to reuse a prepared
statement
in
subsequent calls to the database. In WebLogic, however, after each
call
we
return the Connection object to the WebLogic connection pool. A
prepared
statement is created on a specific Connection object. The next timewe
want
to use the same query we get a Connection from the pool, which
might
be
another instance of the Connection class. Therefor it seemsimpossible
or at
least dangerous to reuse the same prepared statement. Even in the
case
this
would work we're indirectly using the other Connection, which we
already
returned to the pool and which could be retrieved from the pool bysomeone
else. So, can't we reuse preparedstatements ?We already have you covered! Weblogic caches PreparedStatements along
with the pooled connection they came from. Every time you obtain a
pool
connection and run a prepareStatement() or prepareCall(), we willtransparently
give you a previously made statement, if the SQL exactly matches, andno
other place in the current thread stack is using that statement(multiples
can
be cached)
You are correct, of course, that statements you have should only
be
useable
to you while you have the connection from which they came. We have
you
covered
there too. If you were to try to use any prepared statement that
you'd
gotten
from
a pool connection after you'd put the connection back into the pool,those
statements
would throw an exception saying that they had been made inoperable atthe
time
you'd closed the connection.
Joe Weinstein at B.E.A. -
VMM 2012 R2 - Default MAC Address Pools
We have two VMM servers at different sites but on the same network subnet.
Having deployed virtual machines from both VMM servers we have experienced a number of instances where the same MAC address has been allocated to more than one virtual machine (same MAC allocated by each VMM Server).
Consequently, I would like to split the current Default MAC Address Pool range and allocate half to each VMM server.
The documentation suggests that the current "Default MAX Address Pool(s)" should be deleted before the new custom pools are created.
We have already deployed a large number of virtual machines from each VMM server.
Does the deletion of the "Default MAC Address Pool(s)" have any impact on the existing virtual machines with MAC addresses assigned from the default pools?
Will the virtual machines retain there existing MAC addresses or will they be re-allocated new MACs?Does the deletion of the "Default MAC Address Pool(s)" have any impact on the existing virtual
machines with MAC addresses assigned from the default pools?
Kind of, you cant delete the "Default MAC Address Pool" while VM's have allocated MAC's.
You can revoke MAC's using the "Revoke-SCMACAddress" cmdlet
Will the virtual machines retain there existing MAC addresses or will they be re-allocated new
MACs?
I would probably choose to first give the VMs MAC addresses from the new pool, then delete
the default pool.
You will need to grant your VMs with new MAC addresses using the Grant-SCMACAddress
cmdlet. -
RFC Destination Connection Pool requirement
Hi Experts,
I have a custom webdynpro java application to display number of work items pertaining to that particular user in a backend.
There are users who dont use this functionality as well. But the requirement is to place this application in home screen.
I have used both metadata and modeldata with hard coded user since we did not want error messages to appear for users who do not have backend access.
Application & Access Details
Application Location : Home Screen
Concurrent Users : 600 concurrent users maximum possible value
Connection Usage : Close connection immediately using disconnectIfAlive() method.
Now I need to configure JCO Pool Size , Max Connections, Wait Time for the RFC destination.
I have read a lot of post and documents but could not acheive clarity of thought on this.
Kindly let me know what values I should give in these fields for optimal performance and no connection issue for users.
Regards,
PorselvanHi Muthavudaiyan,
Hope you are doing good.
Basically from the JCo perspective, there are only 5 parameters that are involved here:
jco.destination.pool_capacity:
Maximum number of connections that are held open in the pool for reuse (default: 1)
jco.destination.peak_limit:
Maximum number of connections that can be obtained from a pool at peak usage times
jco.destination.max_get_client_time:
Maximum time to wait for a free connection if the peak limit is reached before exception is thrown
jco.destination.expiration_time:
Timeout period after which pooled idle connections can be closed (default: 600000ms = 10mins)
jco.destination.expiration_check_period:
Regular time interval for checking if pooled connections have expired and will be closed
The values are determined by the application in question. The ideal values have to told to you by the application developer; there are no two ways about this.
Thank you and have a nice day :).
Kind Regards,
Hemanth -
RCA Connection Pool idle Time-Out takes no effect !
My question description goes here.
According to JCA specification, I developed my 'ManagedConnectionImpl' class from the interface 'ManagedConnection'. I realize the 'destroy()' function to send out logout request to the EIS.
Then I deployed the connector in Sun Java System Application Server, I noticed there are two parameters in Connection Pool part, they are:
1. Idle Timeout. It said it's the maximum time that a connection can remain idle in the pool. I assume the connection will be removed after the specific time expired and before it's removed it will call the recallable function, 'destroy()', in my concrete class, 'ManagedConnectionImpl'.
2. Pool Resize Quantity. it said it's number of connections to be removed when pool idle time expired.
I am weird about it. I think EIS had itself session control strategy, if the specific session time-out expired, it will invalidate this session. So I think we will set 'Idle Timeout' in application server to be shorter than the EIS session time-out. If the 'Idle Timeout' in application server expired, it should remove all connections inside otherwise maybe the connection with invalid session will exist! (the background knowledge is our system will return back soap fault when it meets invalid session, so the invalid connections will not be removed by switching on your configuration item, 'On Any Failure')
So I set "inital and minimum pool size" to 8, "maximum pool size" to 32 and "Pool Resize Quantity" to 32. (I expect AS to remove all when pool idle time expired)
After deploying, I send out requests at the first round and wait for the time expired but I can't see the desired logout requests from pool automatically even one. Firstly I guess if my recallable function definition is wrong but when I shut down the Application Server, the desired logout requests are sent out from pool automatically. So I think my recallable function definition is workable.
What's your comments on it?
P.S.
I am using Sun Java System Application Server 8.1.
Thanks in advance!
BRs
/LeoI have had following test to ensure I sent out notification to listener.
[#|2005-08-23T16:14:25.061+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
It's in managed env!|#]
[#|2005-08-23T16:14:25.062+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
enter matchManagedConnections() !|#]
[#|2005-08-23T16:14:25.062+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
try to find a matching and existing one, reuse it!|#]
[#|2005-08-23T16:14:25.062+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
Found a matching and existing one, reuse it!|#]
[#|2005-08-23T16:14:25.495+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
tearDown() is called, the application-level connection is released!|#]
[#|2005-08-23T16:14:25.496+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
enter calling close() of managed connection.|#]
[#|2005-08-23T16:14:25.496+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
Start calling close() of managed connection.|#]
[#|2005-08-23T16:14:25.496+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
start to notify the listener the completeness of connection.|#]
[#|2005-08-23T16:14:25.496+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
notify the listener the completeness of connection successfully.|#]
Whether it's related with the initial and minimum number parameter? Although I found it will not be created during AS start-up and will be created at the first request.
Whether it shall be kept to meet the minimum requirement? I have failed to set it to 0.
Maybe you are looking for
-
How to directly access a SELECTED row in a table using MasterColumn
I'm using a table with MasterColumn (TreeByNestingTableColumn) contains checkbox element. In order to get the selected row I have to navigate the whole tree which is a very expensive when the tree is big. I also tried without check box by just using
-
Lose functionality in some reports when upgrading to Crystal XI
Post Author: SMRAVZ CA Forum: Upgrading and Licensing Hello All, I was in the process of upgrading all my reports to crystal XI. As a results, some of the reports have seem to lose their functionality when run through my VB app. If I run the reports
-
Hi, I am developing a report of customer wise sales analysis report, in this report we can generate range of customer, every customer have more than one page. In this report I want to display page no in customer wise, ie; each customer wise I want to
-
Type conversion when calling a java program in form 6i
Hi, I would like to call a java program in form 6i. The java program takes a date parameter in. When I call the java program in form, how can I pass a date parameter to it? -- Method: isSystemDate (Ljava/util/Date;)Ljava/lang/String; FUNCTION isSyste
-
Error in assigning the tax group in SRM-IMS
Hi All, I am getting an error "Error in assigning the tax group" and when checking thru BBP_PD, message number BBP_PD, 047. When posting a non PO based invoices from IMS this error is appearing however when I am creating same invoice from XML and pos