QoS for Framerelay with map-classes or with shapers
Hi,
For a customer we have a E1 leasedline for transport between CE en PE. Now to tranport 3 seperate connections we want to use FrameRelay. On top of that we want QoS. Now normally we use on ethernet Shapers but some say we have to use Map-classes on framerelay instead.
Is that true and why
We can user but for for that we neede to enable frame-relay traffic shapping first.
After that you can create frame-relay map and match the traffic
shivlu
Similar Messages
-
Help With Multiple Class Objects With Methods
I am dealing with multiple classes. I am wondering why I am getting an error on this line it's by the bottom
obj1.array() = newArray[i];
It gives the array out of bounds. On another note I believe I can change obj1 to just like incomingArray if I wanted correct since it's just a reference because I should be able to do this method sort on any array.
method : selSort
input - none
output - void
This is where we sort the arary
Pseudocode Code:
1 Initialize variable oldlocation to hold spot of smallest number in original array
2 Initialize variable smallnumber to store smallest number in original array
3 Initialize new integer array
4 Set new array length to length of original array
5 Initialize variable length to store lengh of new array
6 For i = 0 and continue till i < new array length
6.1 Find smallest number in original array
6.2 Put the smallest number in new array
6.3 Remove smallest number from original array
7 Copy contents of new array that is sorted to original array
Basic concept is to repetitively find the smallest
(or largest) item in the original array. Once smallest
is found, move it to the next spot in a new array and
remove it from the old array.
public void selSort ()
int oldlocation = 0;
int smallnumber = 0;
int [] newArray = obj1.array();
newArray = new int [obj1.length()];
int length = newArray.length;
for (int i = 0; i < newArray.length; i++)
// System.out.println("Test 1");
newArray[i] = obj1.sortSmall();
// System.out.println("Test 2");
smallnumber = obj1.sortSmall();
// System.out.println("This is the smallest number " + smallnumber);
oldlocation = obj1.location(smallnumber);
// System.out.println("This is the old location " + oldlocation);
// System.out.println("Test 3");
obj1.removeLocation(oldlocation);
// System.out.println("Test 4");
System.out.println();
System.out.println("The sorted array looks like");
for (int k = 0; k < newArray.length; k++)
System.out.print(newArray[k] + " ");
System.out.println();
System.out.println();
obj1.resize(newArray.length);
for (int i = 0; i < newArray.length; i++)
obj1.array()[i] = newArray[i];
return;method : selSort
input - none
output - void
This is where we sort the arary
Pseudocode Code:
1 Initialize variable oldlocation to hold spot of smallest number in original array
2 Initialize variable smallnumber to store smallest number in original array
3 Initialize new integer array
4 Set new array length to length of original array
5 Initialize variable length to store lengh of new array
6 For i = 0 and continue till i < new array length
6.1 Find smallest number in original array
6.2 Put the smallest number in new array
6.3 Remove smallest number from original array
7 Copy contents of new array that is sorted to original array
Basic concept is to repetitively find the smallest
(or largest) item in the original array. Once smallest
is found, move it to the next spot in a new array and
remove it from the old array.
public void selSort ()
int oldlocation = 0;
int smallnumber = 0;
int [] newArray = obj1.array();
newArray = new int [obj1.length()];
int length = newArray.length;
for (int i = 0; i < newArray.length; i++)
// System.out.println("Test 1");
newArray[i] = obj1.sortSmall();
// System.out.println("Test 2");
smallnumber = obj1.sortSmall();
// System.out.println("This is the smallest number " + smallnumber);
oldlocation = obj1.location(smallnumber);
// System.out.println("This is the old location " + oldlocation);
// System.out.println("Test 3");
obj1.removeLocation(oldlocation);
// System.out.println("Test 4");
System.out.println();
System.out.println("The sorted array looks like");
for (int k = 0; k < newArray.length; k++)
System.out.print(newArray[k] + " ");
System.out.println();
System.out.println();
obj1.resize(newArray.length);
for (int i = 0; i < newArray.length; i++)
obj1.array() = newArray[i];
return; -
Help with SMTP class function with authentication
My server is no longer supporting the php mail() functionality. I need to use SMTP class function with authentication in my php code and they suggested this to replace it: http://www.yrhostsupport.com/index.php?/Knowledgebase/Article/View/101/2/smtp-class-functi on-with-authentication-in-php-code
So I tried it, but can't get it to work. This is my test form:
<form method="post" action="forms/sendmail-test2.php" onsubmit="return checkEmail(this);">
<script type="text/javascript" language="JavaScript">
</script>
<fieldset><legend>Info</legend>
<label> Name </label>
<input type="text"
name="name" size="30" maxlength="40"/><br />
<label> <span class="redText">*</span> Email </label>
<input name="email" type="text" size="30" maxlength="40"/>
<br />
<label><span class="redText">*</span> Message </label>
<textarea cols="40" rows="5" name="message" type="text" /></textarea><br />
</fieldset>
<input type="reset" value="Reset" />
<input type=submit value="Submit Form" />
</fieldset>
</form>
This is sendmail-test2.php where the form goes. It won't send unless I comment out the first 10 lines.
<?php
include('Mail.php');
//$to = "[email protected]";
//$name = $_REQUEST['name'] ;
//$email = $_REQUEST['email'] ;
//$message = $_REQUEST['name'] ;
//$headers = "From: $email";
//$subject = " price quote";
//$fields = array();
//$fields{"name"} = "Name";
//$fields{"email"} = "Email";
//$fields{"message"} = "Message";
$recipients = '[email protected]'; //CHANGE
$headers['From'] = '[email protected]'; //CHANGE
$headers['To'] = '[email protected]'; //CHANGE
$headers['Subject'] = 'Test message';
$body = 'Test message';
// Define SMTP Parameters
$params['host'] = 'levy.dnsbox25.com';
$params['port'] = '25';
$params['auth'] = 'PLAIN';
$params['username'] = '[email protected]'; //CHANGE
$params['password'] = 'xxxxxx'; //CHANGE
/* The following option enables SMTP debugging and will print the SMTP
conversation to the page, it will only help with authentication issues. */
$params['debug'] = 'true';
// Create the mail object using the Mail::factory method
$mail_object =& Mail::factory('smtp', $params);
// Print the parameters you are using to the page
foreach ($params as $p){
echo "$p<br />";
// Send the message
$mail_object->send($recipients, $headers, $body);
?>
It used to work fine when I used
$send = mail($to, $subject, $body, $headers);
$send2 = mail($from, $subject2, $autoreply, $headers2);
But they said I can't use it any more. I'm good with HTML and CSS but I don't know much about php. Thanks for any help integrating a from into this new code!Thanks, bregent. I changed it to this and it sends, but nothing shows up in the body except "Test message". How would I "insert the form fields' 'email' and 'name' and 'message' in the body"?
<?php
include('Mail.php');
$to = "[email protected]";
$name = $_REQUEST['name'] ;
$email = $_REQUEST['email'] ;
$message = $_REQUEST['name'] ;
//$headers = "From: $email";
$subject = " price quote";
$fields = array();
$fields{"name"} = "Name";
$fields{"email"} = "Email";
$fields{"message"} = "Message";
$recipients = '[email protected]'; //CHANGE
$headers['From'] = '[email protected]'; //CHANGE
$headers['To'] = '[email protected]'; //CHANGE
$headers['Subject'] = 'Test message';
$body = 'Test message';
$fields = array();
$fields{"name"} = "Name";
$fields{"email"} = "Email";
$fields{"message"} = "Message";
// Define SMTP Parameters
$params['host'] = 'levy.dnsbox25.com';
$params['port'] = '25';
$params['auth'] = 'PLAIN';
$params['username'] = '[email protected]'; //CHANGE
$params['password'] = xxx'; //CHANGE
/* The following option enables SMTP debugging and will print the SMTP
conversation to the page, it will only help with authentication issues. */
$params['debug'] = 'true';
// Create the mail object using the Mail::factory method
$mail_object =& Mail::factory('smtp', $params);
// Print the parameters you are using to the page
foreach ($params as $p){
echo "$p<br />";
// Send the message
$mail_object->send($recipients, $headers, $body);
?> -
Map data from class CL_PT_REQ_WF_ATTRIBS with workflow
Hi All,
I am using the standard class CL_PT_REQ_WF_ATTRIBS with DUMMY method for approval workitem which uses webdynpro ABAP. The webdynpro person is passing one variable RESULT after the approval, and RESULT with its value is shown in the log but there is no workflow container element named RESULT in the workflow. so, I created one with that name. But when I use this vaiable in the task after mapping, it is not showing any value. Am I missing something or doing anything wrong?Hi
After creating the container element in Approve Leave request Task did you try to refresh the buffer and Refresh Org assignement.
And also make sur ethat the webdynpro developer is writing back the decision to Approve Leave request Task
and also make sure you do a proper bidning between Task container to workflow container. Check in the workflow log whteher in atleast the task container the value is populate. Also please let us know how the webdynpro developer is assigning the result value is it something like he is using SAP_WAPI_WRITE_CONTAINER function module then make sure that the container element is CAse Sensitive. so ask him to define as you decalred in the task/workflow container.
Regards
Pavan
Edited by: Pavan Bhamidipati on May 17, 2011 2:18 PM
Edited by: Pavan Bhamidipati on May 17, 2011 2:18 PM
Edited by: Pavan Bhamidipati on May 17, 2011 2:19 PM -
How to map secondry elements with main if have same ids for both?
I need to map secondry elements with its matching primary elements if they both have same id.
How can this be achieved in xslt.
If ids are not matching then not a single element of secondry sholud be shown.
If ids matching, then other fields of secondry elements, should be mapped to similar fields of primary elements.
Eg: Its like some program running and in between some add on programs started (may be trailor or advertisement).
the add on program is not always shown (optional), and whenever shown it has its own data information etc etc.
Please provide me some input, how to map and proceed.
Not sure what this code is really doing.
<xsl:template match="SECONDARY_EVENT_LIST">
<xsl:variable name="secondaryElements" select="ancestor::SCHEDULE/SECONDARY_ELEMENT_LIST"/>
<xsl:for-each select="SCHEDULE_ELEMENT_ID">
<xsl:variable name="id" select="."/>
<xsl:apply-templates select="$secondaryElements/SCHEDULE_ELEMENT[(@ID=$id)]"/>
</xsl:for-each>
</xsl:template>
Is this having any relation with what my requirement is all about?Hi,
You can use XPATH command to get the exact tag.
You can access each tag with it location like “/Report_Name/Group_Tag/Element_ID”.
I think this will remove the ambiguity of Tags with same ID. -
Need help with QoS for WRT610N
My previous router was DIR-855 and I had opted for automatic option under QoS.
I changed the router in favour of WRT610N since DIR-855 never worked with SIP ALG enabled. I am happy WRT610N works with SIP ALG enabled.
On my one box I do lots of streaming media and I want to assign priority to this box. I also want to assign priority to my Gigaset S685IP phone as well.
I am told QoS works for upstream and not for downstream. Is this correct?
Can you please enlighten me how I set up QoS for one of my computers and IP phone?
Does WRT610N have the possibility to handle QoS automatically? If so, how I can tell it to do so?Under QoS,you can set the Internet bandwidth priority for a variety of applications and devices. There are four levels priority: High, Medium, Normal, or Low. When you set priority, do not set all applications to High, because this will defeat the purpose of allocating the available bandwidth. If you want to select below normal bandwidth, select Low. Depending on the application, a few attempts may be needed to set the appropriate bandwidth priority.
There are four categories available...like... Applications, Online Games, MAC Address, Ethernet Port, or Voice Device.So you can setup the priority for X-Box and Voice device. -
Total drops for class-map class-default
Hi,
I have a gigabit ethernet interface on a 2951 configured with 4x sub interfaces providing connectivity to our four WAN sites. Each sub interface services a 100mb connection to another site.
I have configured a QoS policy and attached to each sub interface with the primary function of limiting each sub interface to 100mbs. I am now seeing drops (total drops) on the class default and not sure why. I would not expect to see any drops on this interface as it never even reaches 15mb (15%) capacity.
Any ideas?
Class-map: class-default (match-any)
175934881 packets, 95319007968 bytes
5 minute offered rate 23000 bps, drop rate 0000 bps
Match: any
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/340/0
(pkts output/bytes output) 314212026/180287074028
policy-map PM-Branch-QoS
class CM-OAM
set dscp af11
class CM-Network
set dscp cs6
class CM-VC
bandwidth percent 5
class CM-Citrix
set dscp af21
class CM-CAPWAP
set dscp af22
policy-map PM-WAN
class class-default
shape peak 100000000
service-policy PM-Branch-QoSDisclaimer
The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.
Liability Disclaimer
In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.
Posting
I would not expect to see any drops on this interface as it never even reaches 15mb (15%) capacity.
Your expectations might be incorrect. Often percentage of bandwidth capacity measurements are misunderstood.
Let's assume your ingress is 100 Mbps. Let's also assume your measuring over a five minute period. Lastly, assume the ingress transmits at 100% for 1 minute and then stops for 4 minutes. Bandwidth utilization across the 1 minute would be 100% and 0% for the other 4 minutes, but it would be 20% for the 5 minutes.
But if the 100 Mbps was sent at 100% for each 12 seconds, and not sent for each 48 seconds, 5 minute utilization would still be 20% but unlike the prior 1 minute stats of 100% and 0%, each minute would now also be 20%.
So these first two examples show how bandwidth utilization don't reveal what's happening within the measured time period.
Since ingress was same bandwidth as egress, in the above, there would be no queuing.
If ingress is gig, though, suppose gig ingress arrives for 6 seconds and stops for a remaining 4 minutes and 54 seconds. This too would measure as 20% usage across 5 minutes, but since it will take 60 seconds to transmit the same traffic at 100 Mbps, packets will need to be queued. If queuing buffers are insufficient to hold all the packets, some will be dropped.
The above is a long way of saying, if your ingress rate exceeds your egress rate, there can be a need to queue packets, and if queuing is insufficient, packets will be dropped, this even if utilization is "low". Most likely, you have occasional "bursts" if ingress bandwidth exceeds the egress bandwidth.
From your actual stats, the drop rate percentage is so low, you might not need to concern yourself with the few drops you're seeing. If it is a concern, you might be able to reduce the drop rate by increasing egress buffering, but doing so, also increases egress queuing delay. -
Hibernate - Spring - problem with mapping (many-to-many)
Hello,
I want to map the following situation. I have a table called EDUCATION and a table called SCHOOLS. Between those tables I have an associative table called EDUCATION_SCHOOLS. The (usefull) fields:
EDUCATION:
id (long) - PK
name (varchar)
versionNr (long)
SCHOOLS:
id (long) - PK
name (varchar)
versionNr (long)
EDUCATION_SCHOOLS:
id (long) - PK
education_id (long) (FK to EDUCATION.id)
school_id (long) (FK to SCHOOLS.id)
name (varchar)
versionNr (long)
Their is a Unique Constraint between EDUCATION_SCHOOLS.education_id and EDUCATION_SCHOOLS.school_id.
What I want to be able to do:
EDUCATION: select, update, insert
SCHOOLS: select, update, insert
EDUCATION_SCHOOLS: select, update (only the non-FK fields), insert
I never want to delete anything in those tables. (and it's never ever going to be an option either)
Hibernate version:
Hibernate-Version: 3.0.5
Mapping documents:
Education:
<hibernate-mapping>
<class name="##.Education" table="EDUCATION">
<id name="id" column="ID" type="java.lang.Long">
<generator class="sequence">
<param name="sequence">EDUCATION_SEQ</param>
</generator>
</id>
<version name="versionNr" column="VERSIONNR" type="long"/>
<property name="name" column="NAME" type="string" />
<set name="SCHOOLS" table="EDUCATION_SCHOOLS">
<key column="EDUCATION_ID" />
<many-to-many class="##.Schools" column="SCHOOL_ID" lazy="false" />
</set>
</hibernate-mapping>
Schools:
<hibernate-mapping>
<class name="##.Schools" table="SCHOOLS">
<id name="id" column="ID" type="java.lang.Long">
<generator class="sequence">
<param name="sequence">SCHOOLS_SEQ</param>
</generator>
</id>
<version name="versionNr" column="VERSIONNR" type="long"/>
<property name="name" column="NAAM_NAME" type="string" />
<set name="educations" table="EDUCATION_SCHOOLS" inverse="true" cascade="none">
<key column="SCHOOL_ID" />
<many-to-many class="##.Schools" column="SCHOOL_ID" lazy="proxy"/>
</set>
</hibernate-mapping>
Education_schools:
<hibernate-mapping>
<class name="##.EducationSchools" table="EDUCATION_SCHOOLS">
<id name="id" column="ID" type="java.lang.Long" unsaved-value="0">
<generator class="sequence">
<param name="sequence">SEQ_EDUCATION_SCHOOLS</param>
</generator>
</id>
<version name="versionNr" column="VERSIONNR" type="long" />
<many-to-one name="education" class="##.Education" cascade="none" lazy="proxy"
column="EDUCATION_ID" not-null="true"/>
<many-to-one name="schools" class="##.Schools" cascade="none" lazy="proxy"
column="SCHOOL_ID" not-null="true"/>
</hibernate-mapping>
Name and version of the database you are using:
Oracle XE 10g
I am able to:
EDUCATION: select, insert, update
SCHOOLS: select, insert, update
EDUCATION_SCHOOLS: select
Problems:
EDUCATION_SCHOOLS: when I try to insert, I sometimes get unique constraint violations. (when I should get them, thus I'm trying to insert something that already exists .. but how do I stop Hibernate from Inserting?)
EDUCATION_SCHOOLS: when I try to update, sometimes it works, but often I get:
23:03:55,484 [http-8081-1] ERROR be.vlaanderen.lne.vea.epb.ui.struts.EpbExceptionHandler - org.springframework.orm.hibernate3.HibernateOptimisticLockingFailureException: Object of class [##.EducationSchools] with identifier [null]: optimistic locking failed; nested exception is org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [##.EducationSchools#<null>]
ex.getMessage() Object of class [##.EducationSchools] with identifier [null]: optimistic locking failed; nested exception is org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [##.EducationSchools#<null>]
org.springframework.orm.hibernate3.HibernateOptimisticLockingFailureException: Object of class [##.EducationSchools] with identifier [null]: optimistic locking failed; nested exception is org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [##.EducationSchools#<null>]
Caused by: org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect):As you can see from the stacktrace I use Spring for the transactionManager: org.springframework.orm.hibernate3.HibernateTransactionManager in which I use e sessionFactory: org.springframework.orm.hibernate3.LocalSessionFactoryBean
In my DAO, I try to save with the regular this.getHibernateTemplate().saveOrUpdate that has always worked for me.
Another problem I have:
when i update "name" in EDUCATION, the records with that ID are delete from EDUCATION_SCHOOLS ...
As I am experiencing 3 different problems, I'm pretty sure something is wrong in the mapping files .. however I fail to find out what .. Any input would be greatly appreciated.
(I translated some class/table-names, that's what the ## cause)
Edited by: Bart_Blommaerts on Jul 29, 2008 11:53 PMThank you for your input.
When I try what you suggest, I still get the same error:
16:39:30,406 [http-8081-1] ERROR ###.EpbExceptionHandler - org.springframework.orm.hibernate3.HibernateOptimisticLockingFailureException: Object of class [###.EducationSchools] with identifier [2]: optimistic locking failed; nested exception is org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [###.EducationSchools#2]
ex.getMessage() Object of class [###.EducationSchools] with identifier [2]: optimistic locking failed; nested exception is org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [###.EducationSchools#2]
org.springframework.orm.hibernate3.HibernateOptimisticLockingFailureException: Object of class [###.EducationSchools] with identifier [2]: optimistic locking failed; nested exception is org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [###.EducationSchools#2]
Caused by: org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [###.EducationSchools#2]If you had to map the database tables, I'm trying to map, how would you do it? -
Mapping of field with MinOccurs 0 in SAP XI 2.0 SP5
Hi,
Our Scenario is
File -> Adapter -> XI -> Idoc Adapter -> SAP
We are trying to push IDoc and the mapping tool is giving an error. I am providing the error that I am getting.
The snippet of the XSD for the IDoc is given below:
<xsd:element name="E1FIKPF" minOccurs="1" maxOccurs="1" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>FI Document Header (BKPF)</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="BUKRS" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>Name of global company code</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="6" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BELNR" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>Accounting Document Number</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="GJAHR" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>Fiscal Year</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="\d+" />
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BLART" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>Document type</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BLDAT" minOccurs="0" type="date" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>Document Date in Document</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="BUDAT" minOccurs="0" type="date" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>Posting Date in the Document</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="MONAT" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>Fiscal Period</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="\d+" />
<xsd:maxLength value="2" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
In this snippet as can be seen the minOccurs for the BUKRS field is 0. But if I do not map the field its giving me following error.
/usr/java131/bin/javac -encoding UTF8 -classpath .:./system-lib/boot.jar:./system-lib/jaas.jar -extdirs ./additional-lib:./services/deploy/work/applications/ExchangeRepository -d /tmp/9_53_35_27_7_2004 /tmp/9_53_35_27_7_2004/com/sap/xi/tf/_MsgMapGcentre2Fidcc2_.java
/tmp/9_53_35_27_7_2004/com/sap/xi/tf/_MsgMapGcentre2Fidcc2_.java:303: ';' expected
a117.gotoNextContext();tmpValAtr = a117.getValue();if (!tmpValAtr.equals(SUPPRESS)) handler.addAttribute("SEGMENT", tmpValAtr);a117.gotoNextValue();if (!__deflt)a115.gotoNextValue();No mapping for value/FIDCCP02/IDOC/E1FIKPF/BUKRS
^
/tmp/9_53_35_27_7_2004/com/sap/xi/tf/_MsgMapGcentre2Fidcc2_.java:303: cannot resolve symbol
symbol : class No
location: class com.sap.xi.tf._MsgMapGcentre2Fidcc2_
a117.gotoNextContext();tmpValAtr = a117.getValue();if (!tmpValAtr.equals(SUPPRESS)) handler.addAttribute("SEGMENT", tmpValAtr);a117.gotoNextValue();if (!__deflt)a115.gotoNextValue();No mapping for value/FIDCCP02/IDOC/E1FIKPF/BUKRS
^
2 errors
Compilation error
Any one having any guesses on why this error is coming. I know this error would vanish if we map the field by an Empty Constant. But then it would start giving error for the next field until all the non mandatory fields are mapped.
If however I go ahead and map all the fields then the output structure generates all the segments the maxOccurs times. i.e. if a segment is occuring 999 times then that segment is repeated that many time in the output whereas I never needed that segment in the output.
Can any one suggest as to why this is happening. Am I doing some thing wrong or this is a problem with Mapping Editor in XI 2.0 SP5.
AshishHello Ashish,
this is a bug in the mapping tool. You have to apply the note 730081. It says:
Symptom
After you import XI20 Support Package 04 or Support Package 05, you can
no longer change and regenerate the message mapping (graphic mapping
tools).
The following error is displayed during activation or generation: No
Mapping for value.......
Other terms
Graphic mapping tools, SAPINTSER05, no mapping vor value
Reason and Prerequisites
This problem is caused by a translation error.
Solution
The translation error has been corrected.
As of patch level 1, the correction is provided in the SAPINTSER05_1.sca
archive of the INTEGRATION Services 2.0 software component and, as of
patch level 2 for Support Package 5, it is provided in the
SAPINTBUI05_2.sca archive of the INTEGRATION BUILDER 2.0 software
component. The archives are available on the SAP Service Marketplace at:
http://service.sap.com/patches
SAP EXCHANGEINFRASTRUCTURE/SAP EXCHANGEINFRASTRUCTURE 2.0
Binary Patches/INTEGRATION SERVICES 2.0/OSINDEP and
..... /INTEGRATION BUILDER 2.0/OSINDEP
Import the archives using SDM.
The mapping must be recompiled after deployment.
Regards Franz -
Should we avoid Graphical mapping and stick with Java mapping?
After developing mappings in XI for a month, I just don't see any good reasons to use Graphical mappings over Java mappings. Maybe some experienced users here can give me some valid reasons why we should choose Graphical mappings. Here is what I think:
Disadvantages of Graphical mappings:
1. No way to perform automated unit testings. This is probably the biggest reason I hate it. You can do some tests manually when you work in Integration Builder. But there is no way you can write some unit testing utilities to automate the task.
2. Complexity. Even for some simple requirements, your Graphical mappings can become complicated and hard to understand. A lot of times, I find myself staring at several dozens of graphical nodes and try to understand what it does.
3. Impossible to reuse. This is totally against the DRY (Don't repeat yourself) principle. For example, to generate messages for JDBC adapter, it is common to have two identical fields for primary keys: one in the access node and another in the key node. If you change the mapping logic in one, you have to remember to change the other.
Advantage with Java mappings:
1. Fully automated unit testing. You can create JUnit tests along with your Java mapping classes and use Maven or other build tools to perform automated unit testing.
2. Your choice of XML parsing and binding. With Java mapping, you can choose any open source framework for XML parsing and binding. For example, with XMLBeans, I can convert XML input message to a Java object, transform to another Java object and write to output message. And each Java object is generated from its corresponding XML schema.
3. Highly reusable. We can use fundamental object-oriented designs to create highly reusable mapping components.
4. Better version control. Since the mappings are just Java classes, we can use CVS or SVN to track code changes.
5. Better build tools. We can fully utilize build tools like Ant and Maven to automate the build, unit tests, or even generate documents and mapping web sites.
So do you guys agree? Maybe I am still new to XI or I am missing some important things. But at this point, I just don't see why I should use Graphical mappings. Is there anyone developing XI interfaces completely with Java mappings?
Thanks in advance for any comments!
Kenny CheangHi Suraj,
> Since its graphical the blocks will take space, but
> there is always an adavntage of processing time.
> Ebven though it may appear bigger, it will take less
> time as compared with Java code (for the same
> mapping).
Could you explain more why the graphical mapping has better performance? I thought the graphical mapping is compiled into a Java class in the runtime anyway.
> Yes thats there, but same goes with Java mapping too
> right (if you haven't mentioned it as constants)
I mainly think about inheritance. If I have to build 10 interfaces and they all have some common behavior, I can create a base interface class to encapsulate the common logic. But with graphical mapping, you have to duplicate them in each interface.
> Disadvantages of Java mapping:
> 1. Performance
Same as above. I just don't see why Java has worse performance. I actually think Java should have better performance. You can optimize the code anyway you want. In some cases, you have to use queue functions in graphical mapping but it's not necessary in Java.
> 2. All might not be well versed with Java Code(though
> everyone may know basic java) .
I am not asking everyone to abandon graphical mapping. I am just wondering which one is better when you have skills for both.
> 3. Lot of standard functions are available in GM
> which you can choose, but you have to remember the
> exact code for those in Java mapping.
You can create functions in Java too. All you have to do is to remember the function name.
Kenny -
Problem about mapping 1 column with different tables..
Hi,
I have 3 Tables (I will give examples not exact tables but same structure and logic)
Cars :
ID ( Car ID)
Name
Planes :
ID ( Plane ID)
Name
Processes :
ID ( Process ID )
Type
VehicleID {code}*Sample Processes Table Data*
{code:java}ID Type VehicleID
1 1 1
2 1 2
3 2 1
3 2 2{code}
When type is *1*, This is *Car* and means that *VehicleID* maps to *Cars Table*,
When type is *2*, This is *Plane* and means that *VehicleID* maps to *Planes Table*.
And So On 3, 4, 5, 6 .. for Additional tables.
How can i map something like that? I can not merge these tables, they all must be separated..
I used to handle this by writing native SQL with some functions, however with JPA i could not figure it out..
Thanks again
Regards.I do not know an easy way to do this in pure JPA. EclipseLink though is able to do this using a variable one to one mapping:
http://wiki.eclipse.org/Introduction_to_Relational_Mappings_%28ELUG%29#Variable_One-to-One_Mapping
This can be set using a customizer or JPA like annotations:
@VariableOneToOne(
targetInterface=Vehicle.class,
cascade=PERSIST,
fetch=LAZY,
discriminatorColumn=@DiscriminatorColumn(name="TYPE", discriminatorType=INTEGER),
discriminatorClasses={
@DiscriminatorClass(discriminator="1", value=Cars.class),
@DiscriminatorClass(discriminator="2", value=Planes.class)
Best Regards,
Chris -
Error 'Inconsistent datatypes' with Java classes
Hi,
I have some Java classes loaded in Oracle 8.1.6, mapped as Object Types, so when I create one object from PL/SQL, JVM ought to create the matching Java object, communicating via the SQLData interface.
Unfortunately, after the code:
pippo:=OraMailer('mail.server.com','mymail');
that creates the PL/SQL object, any code that use member procedures or function wrapping instance methods of the Java class fails with the error 932: Inconsistent datatypes.
I looked for a mistake in my PL/SQL and Java code, but no error was found.
It is very important: help me!!!
ThxSo here is what you are doing:
ArrayList results = //get employees from database
ListIterator langIt = results.listIterator();
while (langIt.hasNext()) {
Employee emp = langIt.next();
String name2 = emp.getName();
String SSNo = emp.getSSNum();
results.add(name2);
results.add(SSNo);
}So you get a list or Employee objects, then you get an iterator over the list. For each Employee in the list you add the name and SSNo as Strings back to the same list. From the API for ConcurrentModificationException the exception can be thrown when you modify a collection while iterating over the collection - which is precisely what you are doing.
The ListIterator interface allows you to modify the list through its own methods. Try using:
langIt.add(name2);
langIt.add(SSNo);instead.
Why are you taking the name and SSNo out of the Employee object and placing them back in the same List anyway? That makes no sense to me. -
Query: Missing tablename in generated SQL for vertical mapped classes
Hi,
I am playing with Kodo 3.1.4 / Postgres 7.4 and could not find any
solution for this problem:
I have one class calles "Clipfragment" which represents video clips and
has a long - field named "lengthInMinutes". It extends a baseclass
called "Categorizablefragment", which has a field "id" and some others.
I use vertical mapping, thus having one table per class. The identity
type is 'application'. The table for the class "Categorizablefragment"
contains fields for jdoclass and jdoversion and IMHO correct entries.
Everything works really fine except for Querys against subclass fields
with aggregate functions. E.g. counting all clips works:
KodoQuery q = (KodoQuery) getJdoPm().newQuery(ClipFragment.class);
q.setResult ("count(id)");
Number count = (Number) q.execute ();
But: Querying for the sum of the field 'lengthInMinutes' fails:
KodoQuery q = (KodoQuery) getJdoPm().newQuery(ClipFragment.class);
q.setResult ("sum(lengthInMinutes)");
Number count = (Number) q.execute ();
The exception is:
kodo.util.UserException: com.solarmetric.jdbc.ReportingSQLException:
ERROR: syntax error at or near "WHERE"
{prepstmnt 16398807 SELECT AVG(t0.lengthinminutes) FROM WHERE
t1.jdoclass = ? [reused=0]} [code=0, state=42601]
NestedThrowables:
com.solarmetric.jdbc.ReportingSQLException: ERROR: syntax error at or
near "WHERE"
{prepstmnt 16398807 SELECT AVG(t0.lengthinminutes) FROM WHERE
t1.jdoclass = ? [reused=0]} [code=0, state=42601]
at kodo.query.AbstractQuery.executeWithMap(AbstractQuery.java:865)
at kodo.query.AbstractQuery.execute(AbstractQuery.java:728)
atde.jk.buvas.model.impl.DefaultClipManager.getTotalTime(DefaultClipManager.java:43)
And the SQL - Trace:
5766 TRACE [main] kodo.jdbc.SQL - <t 17089909, conn 31908613 (1
errors)> [0 ms] executing prepstmnt 17226426 SELECT
SUM(t0.lengthinminutes) FROM WHERE t1.jdoclass = ? [params=(String)
de.jk.buvas.model.fragments.ClipFragment] [reused=0]
I tried both 'base-tables' and 'per-subclass' for the property
kodo.jdbc.VerticalQueryMode, without any results.
Any ideas?
Thanks,
JochenHi Stephen,
here are the excerpts from the .jdo and the .mapping files. The .jdo
file was generated by XDoclet.
..jdo
<class name="ClipFragment"
identity-type="application"
objectid-class="CategorizableFragment$Id"
persistence-capable-superclass="CategorizableFragment"
> <!-- end class tag -->
<extension vendor-name="kodo"
key="jdbc-class-map-name"
value="vertical">
<extension vendor-name="kodo" key="table" value="Clip"/>
</extension>
<field name="title"
> <!-- end field tag -->
<extension vendor-name="kodo"
key="jdbc-size"
value="100">
</extension>
</field>
<field name="lengthInMinutes"
> <!-- end field tag -->
</field>
<field name="description"
> <!-- end field tag -->
<extension vendor-name="kodo"
key="jdbc-size"
value="3000">
</extension>
</field>
<field name="recordingDate"
> <!-- end field tag -->
</field>
<field name="actors"
> <!-- end field tag -->
<collection
element-type="de.jk.buvas.model.fragments.ActorFragment"
> <!-- end collection tag -->
</collection>
<extension vendor-name="kodo"
key="jdbc-element-delete-action"
value="exception-deferred">
</extension>
<extension vendor-name="kodo"
key="inverse-owner"
value="clips">
</extension>
</field>
<field name="media"
> <!-- end field tag -->
<collection
element-type="de.jk.buvas.model.fragments.MediumFragment"
> <!-- end collection tag -->
</collection>
<extension vendor-name="kodo"
key="jdbc-element-delete-action"
value="exception-deferred">
</extension>
</field>
</class>
<class name="CategorizableFragment"
identity-type="application"
objectid-class="CategorizableFragment$Id"
> <!-- end class tag -->
<extension vendor-name="kodo"
key="jdbc-class-map-name"
value="base">
<extension vendor-name="kodo" key="table" value="Categorizable"/>
</extension>
<field name="id"
primary-key="true"
> <!-- end field tag -->
</field>
<field name="category"
> <!-- end field tag -->
<extension vendor-name="kodo"
key="jdbc-delete-action"
value="exception-deferred">
</extension>
</field>
</class>
..mapping
<class name="ClipFragment">
<jdbc-class-map type="vertical" ref-column.ID="ID" table="CLIPFRAGMENT"/>
<field name="actors">
<jdbc-field-map type="many-many" element-column.ID="ID"
ref-column.ID="CLIPS_ID" table="ACTOR_CLIPS"/>
</field>
<field name="description">
<jdbc-field-map type="value" column="DESCRIPTION"/>
</field>
<field name="lengthInMinutes">
<jdbc-field-map type="value" column="LENGTHINMINUTES"/>
</field>
<field name="media">
<jdbc-field-map type="many-many" element-column.ID="MEDIA_ID"
order-column="MEDIA_ORDER" ref-column.ID="ID" table="CLIPF_MEDIA"/>
</field>
<field name="recordingDate">
<jdbc-field-map type="value" column="RECORDINGDATE"/>
</field>
<field name="title">
<jdbc-field-map type="value" column="TITLE"/>
</field>
</class>
<class name="CategorizableFragment">
<jdbc-class-map type="base" table="CATEGORIZABLEFRAGMENT"/>
<jdbc-version-ind type="version-number" column="JDOVERSION"/>
<jdbc-class-ind type="in-class-name" column="JDOCLASS"/>
<field name="category">
<jdbc-field-map type="one-one" column.ID="CATEGORY_ID"/>
</field>
<field name="id">
<jdbc-field-map type="value" column="ID"/>
</field>
</class>
Thanks,
Jochen
Stephen Kim wrote:
Can you post the mapping/metadata files for the two classes?
Jochen Kressin wrote:
Hi,
I am playing with Kodo 3.1.4 / Postgres 7.4 and could not find any
solution for this problem:
I have one class calles "Clipfragment" which represents video clips
and has a long - field named "lengthInMinutes". It extends a baseclass
called "Categorizablefragment", which has a field "id" and some
others. I use vertical mapping, thus having one table per class. The
identity type is 'application'. The table for the class
"Categorizablefragment" contains fields for jdoclass and jdoversion
and IMHO correct entries.
Everything works really fine except for Querys against subclass fields
with aggregate functions. E.g. counting all clips works:
KodoQuery q = (KodoQuery) getJdoPm().newQuery(ClipFragment.class);
q.setResult ("count(id)");
Number count = (Number) q.execute ();
But: Querying for the sum of the field 'lengthInMinutes' fails:
KodoQuery q = (KodoQuery) getJdoPm().newQuery(ClipFragment.class);
q.setResult ("sum(lengthInMinutes)");
Number count = (Number) q.execute ();
The exception is:
kodo.util.UserException: com.solarmetric.jdbc.ReportingSQLException:
ERROR: syntax error at or near "WHERE"
{prepstmnt 16398807 SELECT AVG(t0.lengthinminutes) FROM WHERE
t1.jdoclass = ? [reused=0]} [code=0, state=42601]
NestedThrowables:
com.solarmetric.jdbc.ReportingSQLException: ERROR: syntax error at or
near "WHERE"
{prepstmnt 16398807 SELECT AVG(t0.lengthinminutes) FROM WHERE
t1.jdoclass = ? [reused=0]} [code=0, state=42601]
at kodo.query.AbstractQuery.executeWithMap(AbstractQuery.java:865)
at kodo.query.AbstractQuery.execute(AbstractQuery.java:728)
atde.jk.buvas.model.impl.DefaultClipManager.getTotalTime(DefaultClipManager.java:43)
And the SQL - Trace:
5766 TRACE [main] kodo.jdbc.SQL - <t 17089909, conn 31908613 (1
errors)> [0 ms] executing prepstmnt 17226426 SELECT
SUM(t0.lengthinminutes) FROM WHERE t1.jdoclass = ? [params=(String)
de.jk.buvas.model.fragments.ClipFragment] [reused=0]
I tried both 'base-tables' and 'per-subclass' for the property
kodo.jdbc.VerticalQueryMode, without any results.
Any ideas?
Thanks,
Jochen -
Named query in Entity Bean - Problem with embedded class
Hello Forum,
I'm trying to set up a named query in my Entity Bean and I'm unable to get
it up and running for an embedded class object.
The class hierarchy is as follows:
@MappedSuperclass
AbstractSapResultData (contains dayOfAggregation field)
^
|
@MappedSuperclass
AbstractSapUserData (contains the timeSlice field)
^
|
@Entity
SapUserDataThe named query is as follows:
@NamedQuery(name = SapUserDataContext.NAMED_QUERY_NAME_COUNT_QUERY,
query = "SELECT COUNT(obj) FROM SapUserData AS obj WHERE "
+ "obj.sapCustomerId"
+ "= :"
+ SapResultDataContext.COLUMN_NAME_SAP_CUSTOMER_ID
+ " AND "
+ "obj.sapSystemId"
+ "= :"
+ SapResultDataContext.COLUMN_NAME_SAP_SYSTEM_ID
+ " AND "
+ "obj.sapServerId"
+ "= :"
+ SapResultDataContext.COLUMN_NAME_SAP_SERVER_ID
+ " AND "
+ "obj.dayOfAggregation.calendar"
+ "= :"
+ DayContext.COLUMN_NAME_DAY_OF_AGGREGATION
+ " AND "
+ "obj.timeSlice.startTime"
+ "= :"
+ "timeSliceStartTime"
+ " AND "
+ "obj.timeSlice.endTime"
+ "= :"
+ "timeSliceEndTime")The query deploys and runs except that part:
+ "obj.dayOfAggregation.calendar"
+ "= :"
+ DayContext.COLUMN_NAME_DAY_OF_AGGREGATIONI don't see any difference to the part of the query accessing the timeSlice
field which is also an embedded class object - I access it in exactly the same way:
+ "obj.timeSlice.startTime"
+ "= :"
+ "timeSliceStartTime"
+ " AND "
+ "obj.timeSlice.endTime"
+ "= :"
+ "timeSliceEndTime"The problem is that the complete query runs on JBoss application server
but on the SAP NetWeaver application server it only rund without the
+ "obj.dayOfAggregation.calendar"
+ "= :"
+ DayContext.COLUMN_NAME_DAY_OF_AGGREGATIONpart - If I enable that part on SAP NetWeaver the server complains:
[EXCEPTION]
{0}#1#java.lang.IllegalArgumentException: line 1: Comparison '=' not defined for dependent objects
SELECT COUNT(obj) FROM SapUserData AS obj WHERE obj.sapCustomerId= :sap_customer_id AND obj.sapSystemId= :sap_system_id AND obj.sapServerId= :sap_server_id AND obj.dayOfAggregation.calendar= :day_of_aggregation AND obj.timeSlice.startTime= :timeSliceStartTime AND obj.timeSlice.endTime= :timeSliceEndTime
^I know that this isn't an application server specific forum but the SAP NetWeaver server is the most strict EJB 3.0 and JPA 1.0 implementation I've seen so far so I think I'm doing something wrong there.
Someone in the SAp forum mentioned:
The problem here is that you compare an input-parameter with an embeddable field of your entity.
Regarding to the JPQL-grammer (spec 4.14) you are not allowed to compare
with the non-terminal embeddable field but with the terminal fields of your
embeddable. Stating that your embedded class might have the fields
startTime and endTime your JPQL query might look like this:
Query q = em.createQuery("SELECT count(obj.databaseId) FROM SapUserData obj WHERE obj.timeSlice.startTime = :startTime AND obj.timeSlice.endTime = :endTime");
q.setParameter("startTime", foo.getStartTime());
q.setParameter("endTime", foo.getEndTime());
q.getResultList();
This limitation in the JPQL grammar is rather uncomfortable.
An automatic mapping of the parameter's fields to the terminal fields of your
embedded field would be more convenient. The same can be said for lists
as parameter-values which is possible in HQL, too. I think we have to wait
patiently for JPA 2.0 and hope for improvements there. :-)
With that help I was able to get it up and running for the timeSlice field but
I don't see the difference to the dayOfAggregation field which is also just
another embedded class using an object of a class annotated with
@Embeddable.
The get method of the dayOfAggregation field is as follows:
* Get method for the member "<code>dayOfAggregation</code>".
* @return Returns the dayOfAggregation.
@Embedded
@AttributeOverrides({@AttributeOverride(name = "calendar", /* Not possible to use interface constant here - field name must be used for reference */
column = @Column(name = DayContext.COLUMN_NAME_DAY_OF_AGGREGATION,
nullable = false)),
@AttributeOverride(name = "weekday",
column = @Column(name = DayContext.COLUMN_NAME_WEEKDAY,
nullable = false)),
public Day getDayOfAggregation() {
return this.dayOfAggregation;
}The link to my question in the SAP forum for reference:
https://www.sdn.sap.com/irj/sdn/thread?messageID=3651350
Any help or ideas would be greatly appreciated.
Thanks in advance.
Henning MalzahnHello Forum,
got a response in the SAP forum - Issue is a bug in the SAP NetWeaver
app. server.
Henning Malzahn -
Problem with mapping the Entity beans onto database tables
Hi,
I got a problem with mapping the Entity beans onto database tables. Here are what I did:
First Step:
asant capture-schema
Second Step:
capture-schema -driver com.pointbase.jdbc.jdbcUniversalDriver -dburl jdbc:pointbase:server://localhost/sun-appserv-samples -username pbPublic -password pbpublic -table APPLICANT -table APPLICANTSKILL -table CUSTOMER -table LOCATION -table job -table JOBSKILL -table SKILL -out build/agency.dbschema
The first step was fine. But, in the second step, I got the error message as follow:
using dburl:jdbc:pointbase:server://localhost/sun-appserv-samples
using username:pbPublic
using password:pbpublic
using driver:com.pointbase.jdbc.jdbcUniversalDriver
using schemaname:null
using output file:build/agency.dbschema
JDO71100: Failed to find a class. Verify that the class is available on your CLASSPATH
java.lang.ClassNotFoundException: com.pointbase.jdbc.jdbcUniversalDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:141)
at com.sun.forte4j.modules.dbmodel.jdbcimpl.ConnectionProvider.<init>(Co
nnectionProvider.java:38)
at com.sun.jdo.api.persistence.mapping.ejb.CaptureSchema.main(CaptureSch
ema.java:130)
at com.sun.jdo.spi.persistence.support.ejb.util.CaptureSchemaWrapper.mai
n(CaptureSchemaWrapper.java:29)
Thanks for your help!You need to add the pbclient.jar or some similar name like that, in the CalssPath.
Maybe you are looking for
-
My iPad screen is stuck on an alert message that is informing me that I have not backed up to iCloud in 5 weeks. How do I get pass this alert message.
-
Migrating AUC from legacy system into SAP
Hi, I'm trying to migrate AUC into SAP from a legacy system and the fiscal year start from 2008. How do I post the acquisition value in AS91 if the AUC is acquired in 2007? using transaction type 900? The asset value date is posted in 01.01.2008 is I
-
Initial context factory: com.sun.jndi.ldap.LdapCtxFactory Provider URL: ldap://wus.contatan.local:38486/cn=workflowusers,dc=contatan,dc=local Username: admin Password: admin Search filter: Search context: Scope: null Nested context: Base DN: null Req
-
XML Multi Camera import file is crashing in Premiere
Hello. I'm trying to work with an imported FCP XML file that is a multi camera edit or as FCP calls it multi clip. I'm only using 3 cameras. Every time I go to select any of the edits on the timeline inside of Premiere I get the following error an
-
I loaded itunes8 pro and installed mpg2 playback but now have no sound. Under windows the A/V section does not opne. Please help/